시작하기
@devercorp/pickgola-sdk는 픽골라 서비스들이 함께 쓰는 패키지입니다.
- 공통 타입:
Account,Service,ServiceRole등 (pickgola-api의 OpenAPI 문서에서 생성) - API 클라이언트:
createClient() - 통합 로그인 도우미:
getMe(),redirectToLogin(),logout(),isAllowedReturnTo() - 서비스 주소:
resolveUrls(),PRODUCTION_URLS,LOCAL_URLS
설치
패키지는 GitHub Packages에 배포됩니다. 프로젝트 루트의 .npmrc에 아래를 추가하고, read:packages 권한이 있는 토큰을 NODE_AUTH_TOKEN 환경 변수로 넣습니다.
ini
@devercorp:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${NODE_AUTH_TOKEN}bash
npm install @devercorp/pickgola-sdk로컬 개발 (배포 전)
저장소들을 같은 폴더(Documents/GitHub)에 나란히 두고 경로로 연결합니다. 먼저 SDK를 빌드해야 합니다.
bash
cd pickgola-sdk && npm install && npm run buildjson
// 사용하는 앱의 package.json
"@devercorp/pickgola-sdk": "file:../pickgola-sdk/packages/sdk"앱의 .npmrc에 install-links=true를 두면 심볼릭 링크 대신 복사본으로 설치되어 React 등 의존성이 중복되지 않습니다. SDK를 고친 뒤에는 SDK를 다시 빌드하고 앱에서 npm install을 다시 실행하세요.
첫 요청
ts
import { createClient, getMe, resolveUrls } from '@devercorp/pickgola-sdk';
const urls = resolveUrls();
const client = createClient({ baseUrl: urls.api });
const me = await getMe(client); // 로그인하지 않았으면 null