OAuth 2.0-Beispiel-App

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Roblox bietet eine Node.js-Beispiel-App, die zeigt, wie man OAuth 2.0 verwendet, um Benutzer in ihre Roblox-Konten einzuloggen und Nachrichten über ihre Erlebnisse zu senden.Diese App verwendet den Autorisierungscode-Fluss ohne PKCE und ist daher nur für vertrauliche Clients geeignet, wie private Server.


Nach dem Herunterladen der .zip Datei extrahiere sie in ihren eigenen Ordner.

Registrieren Sie die App

Der erste Schritt zum Einrichten der App besteht darin, sie auf der Roblox-Website zu registrieren und die Client-ID und den geheimen Schlüssel an einem sicheren Ort zu kopieren.Dann folgen Sie den Standard-Registrierungsschritten mit diesen Einstellungen:

  1. Unter Berechtigungen füge die openid, profile und universe-messaging-service:publish Bereiche hinzu.
  2. Unter Weiterleitungs-URLs füge die http://localhost:3000/oauth/callback Weiterleitung hinzu. Wenn du einen nicht standardmäßigen Port für deine App verwenden möchtest, gib ihn hier an.

Umgebungsvariablen festlegen

Anstatt sie im Code zu speichern (nicht empfohlen), verwendet die App Umgebungsvariablen für Ihre Client-ID und geheim.Der Prozess zum Hinzufügen von Umgebungsvariablen unterscheidet sich je nach Betriebssystem.

Auf Windows laufen die folgenden PowerShell-Befehle:


$env:ROBLOX_CLIENT_ID='your_client_id_here'
$env:ROBLOX_CLIENT_SECRET='your_client_secret_here'
$env:ROBLOX_PORT=3000 # Optional. Default is 3000.

Auf dem Mac und den meisten Linux-Verteilungen führen Sie diese Befehle am Terminal aus:


export ROBLOX_CLIENT_ID=your_client_id_here
export ROBLOX_CLIENT_SECRET=your_client_secret_here
export ROBLOX_PORT=3000 # Optional. Default is 3000.

Wenn du bei der Registrierung deiner App einen nicht standardmäßigen Port in der Weiterleitungs-URL angegeben hast, stelle sicher, die Variable ROBLOX_PORT hinzuzufügen.

Abhängigkeiten installieren

Die App hat eine Handvoll Abhängigkeiten, die in package.json sichtbar sind. Um sie zu installieren, ausführenSie aus:


npm ci

Führe die App aus

Um die App zu starten, ausführenSie aus:


npm start

Navigiere dann zu http://localhost:3000 (oder deinem nicht standardmäßigen Port) in einem Web-Browser.

Die App leitet dich sofort auf den Roblox-Anmeldebildschirm um, auf dem du dich anmelden, die Berechtigungen, die die App anfordert, überprüfen und auf Bestätigen und Zugriff gewähren klicken kannst.

Roblox leitet dich dann zurück zu localhost, wo du sehen kannst, dass die App jetzt einige minimale Benutzerinformationen anzeigt, einen Link zu deinem Profil auf Roblox und Felder, die du verwenden kannst, um Nachrichten über deine Erlebnisse zu senden.

Über die App

Im Großen und Ganzen führt index.js die folgenden Operationen aus:

  1. Startet einen neuen Webserver mit express.
  2. Ruft die Roblox OpenID Connect (OIDC) Konfiguration ab, die Endpunkte für die Autorisierung, Benutzerinformationen usw. enthältFür weitere Informationen zu diesen Endpunkten siehe OAuth 2.0-Authentifizierung.
  3. Erstellt einen neuen Open-ID-Client mit openid-client und deinen gespeicherten Credentials.Dieser Client vereinfacht dramatisch den Prozess der richtigen Formulierung und des Versands von HTTP-Anfragen an die OAuth 2.0-Endpunkte.
  4. Definiert die Routen für die App, einschließlich Weiterleitungen für den Login- und Logout-Fluss und den OAuth 2.Callback.
  5. Nach einem erfolgreichen Login speichert es die verschiedenen Token als Cookies, zusammen mit einigen minimalen Benutzerinformationen, die es als HTML mit Hilfe von getHomeHtml.js anzeigt.