Exemplo de aplicativo OAuth 2.0

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Roblox fornece um aplicativo de exemplo em Node.js que mostra como usar OAuth 2.0 para permitir que os usuários façam login em suas contas Roblox e transmitam mensagens em seus jogos. Este aplicativo usa o fluxo de código de autorização sem PKCE e, portanto, é adequado apenas para clientes confidenciais, como servidores privados.


Após fazer o download do arquivo .zip, extraia-o para sua própria pasta.

Registrar o aplicativo

O primeiro passo para configurar o aplicativo é registrá-lo no site Roblox e copiar o ID do cliente e o segredo em um local seguro. Em seguida, siga os passos padrão de registro com estas configurações:

  1. Em Permissões, adicione os escopos openid, profile e universe-messaging-service:publish.
  2. Em URLs de Redirecionamento, adicione o http://localhost:3000/oauth/callback redirecionar. Se você deseja usar uma porta não padrão para seu aplicativo, especifique-a aqui.

Definir variáveis de ambiente

Em vez de armazená-las no código (não recomendado), o aplicativo utiliza variáveis de ambiente para seu ID do cliente e segredo. O processo para adicionar variáveis de ambiente difere de acordo com o sistema operacional.

No Windows, execute os seguintes comandos do PowerShell:


$env:ROBLOX_CLIENT_ID='seu_client_id_aqui'
$env:ROBLOX_CLIENT_SECRET='seu_client_secret_aqui'
$env:ROBLOX_PORT=3000 # Opcional. O padrão é 3000.

No Mac e na maioria das distribuições Linux, execute estes comandos no terminal:


export ROBLOX_CLIENT_ID=seu_client_id_aqui
export ROBLOX_CLIENT_SECRET=seu_client_secret_aqui
export ROBLOX_PORT=3000 # Opcional. O padrão é 3000.

Se você especificou uma porta não padrão na URL de redirecionamento ao registrar seu aplicativo, não se esqueça de adicionar a variável ROBLOX_PORT.

Instalar dependências

O aplicativo possui algumas dependências, visíveis em package.json. Para instalá-las, execute:


npm ci

Executar o aplicativo

Para iniciar o aplicativo, execute:


npm start

Em seguida, navegue até http://localhost:3000 (ou sua porta não padrão) em um navegador da web.

O aplicativo redireciona você imediatamente para a tela de login do Roblox, onde você pode fazer login, verificar as permissões que o aplicativo está solicitando e clicar em Confirmar e Conceder Acesso.

Roblox então redireciona você de volta para localhost, onde você pode ver que o aplicativo agora exibe algumas informações mínimas do usuário, um link de volta para o seu perfil no Roblox e campos que você pode usar para transmitir mensagens em seus jogos.

Sobre o aplicativo

Em linhas gerais, index.js realiza as seguintes operações:

  1. Inicia um novo servidor web usando express.
  2. Recupera a configuração do Roblox OpenID Connect (OIDC), que inclui endpoints para autorização, informações do usuário, etc. Para mais informações sobre esses endpoints, veja autenticação OAuth 2.0.
  3. Cria um novo cliente Open ID usando openid-client e suas credenciais armazenadas. Este cliente simplifica dramaticamente o processo de formação e envio adequado de solicitações HTTP aos endpoints OAuth 2.0.
  4. Define as rotas para o aplicativo, incluindo redirecionamentos para os fluxos de login e logout e o callback OAuth 2.0.
  5. Após um login bem-sucedido, armazena os vários tokens como cookies, junto com algumas informações mínimas do usuário que exibe em HTML com a ajuda de getHomeHtml.js.
©2026 Roblox Corporation, Roblox, o logotipo Roblox e Powering Imagination estão entre nossas marcas registradas e não registradas nos EUA e em outros países.