Skip to content

OAuth2

OAuth2 — classe para gerenciamento de tokens de autorização OAuth2. A instância singleton fica disponível através da propriedade rest.oauth2 após a inicialização do Frame.

Adiciona automaticamente o cabeçalho Authorization a cada requisição e renova os tokens ao receber um erro de autorização (HTTP 401).

ts
import { OAuth2 } from '@flowlu/miniapp-jssdk'

Propriedades

accessToken

Token de acesso OAuth2 atual

ts
get accessToken(): string

events

Objeto EventCallbacks<OAuth2EventName> com os manipuladores de eventos

ts
get events(): EventCallbacks
set events(value: EventCallbacks)

expiresAt

Data e hora de expiração do token de acesso

ts
get expiresAt(): Date | null

refreshToken

Token de atualização OAuth2 atual

ts
get refreshToken(): string

Métodos

initialize

Inicializa a instância singleton de OAuth2. Se uma instância já existir — atualiza os manipuladores de eventos a partir dos parâmetros fornecidos

ts
static initialize(params?: OAuth2Params): OAuth2
ParâmetroTipoDescrição
paramsOAuth2ParamsParâmetros de inicialização

getInstance

Retorna a instância singleton atual de OAuth2. Chame apenas após initialize()

ts
static getInstance(): OAuth2

Erros

O método lançará um erro se OAuth2 ainda não tiver sido inicializado.

destroy

Remove inscrições e libera recursos

ts
destroy(): void

refresh

Força a renovação dos tokens OAuth2 através da plataforma e retorna OAuth2RefreshResult com os novos valores dos tokens

ts
async refresh(): Promise<OAuth2RefreshResult>

Eventos do método refresh():

EventoParâmetroTipoDescrição
'onRefresh'Tokens renovados com sucesso
dataOAuth2RefreshResultObjeto com os tokens renovados

Exemplo

ts
import { App, OAuth2 } from '@flowlu/miniapp-jssdk'

await App.initializeFrame()

const oauth2 = OAuth2.getInstance()

// inscrever-se no evento de renovação do token
oauth2.events = {
  onRefresh: (data) => {
    console.log('Tokens renovados:', data)
  }
}

// forçar a renovação do token
const result = await oauth2.refresh()
js
const App = window.FlowluMiniApp;

const frame = await App.initializeFrame();

// inscrever-se no evento de renovação do token
frame.rest.oauth2.events = {
  onRefresh: (data) => {
    console.log('Tokens renovados:', data);
  }
};

// forçar a renovação do token
const result = await frame.rest.oauth2.refresh();

Publicado sob a licença MIT.