Skip to content

Class: TokenManager ​

Defined in: src/auth/manager.ts:36

유저 Access Token의 수명 관리.

  • 만료 임박 시 선제 갱신, 401 시 갱신 후 1회 재시도(withAccessToken)
  • Refresh Token이 일회용이므로 갱신은 single-flight로 직렬화하고, 새 토큰 묶음을 즉시 store에 반영한다.

Constructors ​

Constructor ​

ts
new TokenManager(options): TokenManager;

Defined in: src/auth/manager.ts:43

Parameters ​

options ​

TokenManagerOptions

Returns ​

TokenManager

Methods ​

getAccessToken() ​

ts
getAccessToken(): Promise<string>;

Defined in: src/auth/manager.ts:63

유효한 Access Token을 반환한다. 만료(임박) 시 자동 갱신.

Returns ​

Promise<string>


login() ​

ts
login(params): Promise<ChzzkTokenSet>;

Defined in: src/auth/manager.ts:51

인가 코드로 토큰을 발급받아 store에 저장한다.

Parameters ​

params ​

IssueTokenParams

Returns ​

Promise<ChzzkTokenSet>


refresh() ​

ts
refresh(): Promise<ChzzkTokenSet>;

Defined in: src/auth/manager.ts:96

강제 갱신. 동시 호출은 하나의 갱신 요청으로 합쳐진다.

Returns ​

Promise<ChzzkTokenSet>


revoke() ​

ts
revoke(): Promise<void>;

Defined in: src/auth/manager.ts:104

현재 토큰을 폐기하고 store를 비운다.

Returns ​

Promise<void>


setTokens() ​

ts
setTokens(tokens): Promise<void>;

Defined in: src/auth/manager.ts:58

외부에서 발급/보관하던 토큰을 주입한다.

Parameters ​

tokens ​

ChzzkTokenSet

Returns ​

Promise<void>


withAccessToken() ​

ts
withAccessToken<T>(fn): Promise<T>;

Defined in: src/auth/manager.ts:81

Access Token으로 요청을 실행한다. 401(ChzzkAuthenticationError) 시 토큰을 갱신하고 정확히 1회 재시도한다.

Type Parameters ​

T ​

T

Parameters ​

fn ​

(accessToken) => Promise<T>

Returns ​

Promise<T>

공식 OPEN API만 지원 — 비공식 엔드포인트 0건