Roblox bietet eine Node.js-Sammlung an, die zeigt, wie man OAuth 2.0 verwendet, um Benutzer auf ihre Roblox-Konten einzuladen und Nachrichten über ihre Erlebnisse zu verbreiten. Dieses App verwendet den Autorisierungscode-Flowohne PKCE und ist daher nur für vertrauliche Clients, wie private Server, geeignet.
Nach dem Herunterladen der .zip Datei, extrahiere sie in ihren eigenen Ordner.
App registrieren
Der erste Schritt zum Einrichten der App ist es, registrieren Sie sie auf der Roblox-Website und kopieren Sie die Client-ID und den Geheimnamen an einem sicheren Ort. Dann folgen Sie den Standard-Registrierungsschritten mit diesen Einstellungen:
- Unter Berechtigungen fügen Sie die openid , profile und 2> universe-messaging-service:veröffentlichen2>-Szenen hinzu.
- Unter URLs umleiten fügen Sie den http://localhost:3000/oauth/callback Umleitungs-URL hinzu. Wenn Sie für Ihre App einen nicht standardmäßigen Hafen verwenden möchten, geben Sie ihn hier an.
Umgebung variablen einstellen
Statt sie im Code zu speichern (nicht empfohlen), verwendet die App Umgebungs变量 für Ihre Client-ID und -Passwort. Der Prozess zum Hinzufügen von Umgebungsvariablen unterscheidet sich je nach Betriebssystem.
Führen Sie auf Windows die folgenden PowerShell-Befehle aus:
$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-Distributionen führen Sie diese Befehle am Terminal aus:
export ROBLOX_CLIENT_ID=your_client_id_hereexport ROBLOX_CLIENT_SECRET=your_client_secret_hereexport ROBLOX_PORT=3000 # Optional. Default is 3000.
Wenn Sie beim Registrieren Ihrer App eine nicht standardmäßige Port angegeben haben, stellen Sie sicher, dass Sie die Variable ROBLOX_PORT hinzufügen.
Abhängigkeiten installieren
Die App hat eine Reihe von Abhängigkeiten, die in package.json sichtbar sind. Um sie zu installieren, ausführenSie aus:
npm ci
Führen der App
Um die App zu starten, ausführenSie aus:
npm start
Dann navigieren Sie zu http://localhost:3000 (oder Ihrem nicht-Standard-Hafen) in einem Browser.
Die App führt Sie sofort auf die Roblox-Anmeldeseite, bei der Sie sich anmelden, die Berechtigungen, die die App anfordert, überprüfen und auf Bestätigen und Zugriff gewähren klicken.
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 auf deine Erlebnisse zu verbreiten.
Über die App
Mit breiten Strichen führt index.js die folgenden Operationen aus:
- Startet einen neuen Web-Server mit express .
- Bringt die Roblox OpenID Connect (OIDC) Konfiguration wieder her, die Endpunkte für Berechtigung, Benutzerinformationen usw. enthält. Weitere Informationen über diese Endpunkte finden Sie unter OAuth 2.0 Authentisierung.
- Erstellt einen neuen Open-ID-Client mit openid-client und Ihren gespeicherten Anmeldeberechtigungen. Dieser Client vereinfacht den Prozess der richtigen Formulierung und Senden von HTTP-Anfragen an die OAuth 2.0-Endpunkte.
- Definiert die Routen für die App, einschließlich Richtungen für Anmelde- und Auslog-Flows und den OAuth 2.0-Callback.
- Nach einem erfolgreichen Anmelden speichert der Store die verschiedenen Token als Kekse, zusammen mit einigen minimalen Benutzerinformationen, die es als HTML mit der Hilfe von getHomeHtml.js anzeigt.