Próbna aplikacja OAuth 2.0

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Roblox dostarcza przykładową aplikację Node.js, która pokazuje, jak korzystać z OAuth 2.0, aby umożliwić użytkownikom logowanie się do ich kont na Roblox i przesyłanie wiadomości między ich doświadczeniami.Ta aplikacja wykorzystuje przepływ kodu autoryzacji bez PKCE i jest więc odpowiednia tylko dla poufnych klientów, takich jak prywatne serwery.


Po pobraniu pliku .zip wyodrębnij go do własnego katalogu.

Rejestruj aplikacja

Pierwszym krokiem w ustawieniu aplikacji jest zarejestrowanie jej na stronie internetowej Roblox i skopiowanie ID klienta i sekretu w bezpiecznym miejscu.Następnie postępuj zgodnie ze standardowymi krokami rejestracji z tymi ustawieniami:

  1. Poniżej uprawnień , dodaj openid, profile i universe-messaging-service:publish zakresy.
  2. Pod przekierowanymi URLami , dodaj przekierowanie http://localhost:3000/oauth/callback. Jeśli chcesz używać nie domyślnego portu dla swojej aplikacja, określ go tutaj.

Ustaw zmienne środowiskowe

Zamiast przechowywać je w kodzie (nie zalecane), aplikacja używa zmiennych środowiskowych dla ID klienta i sekretu.Proces dodawania zmiennych środowiskowych różni się w zależności od systemu operacyjnego.

Na Windows wykonaj następujące polecenia PowerShell:


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

Na Macu i większości dystrybucji Linux wykonaj te polecenia na terminalu:


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

Jeśli określiłeś nie domyślną port w URL przekierowania podczas rejestracji aplikacja, upewnij się, że dodałeś zmienną ROBLOX_PORT.

Instaluj zależności

Aplikacja ma garstkę zależności, widocznych w package.json . Aby je zainstalować, uruchom:


npm ci

Uruchom aplikacja

Aby uruchomić aplikacja, wykonaj:


npm start

Następnie przełącz się do http://localhost:3000 (lub do twojego nie domyślnego portu) w przeglądarce przeglądarka.

Aplikacja bezpośrednio przekieruje Cię na ekran logowania Roblox, na którym możesz się zalogować, zweryfikować uprawnienia, które aplikacja żąda, i kliknij Potwierdź i daj dostęp .

Roblox następnie przekieruje cię z powrotem do localhost, gdzie możesz zobaczyć, że aplikacja wyświetla teraz minimalną informację użytkownika, link powrotny do twojego profilu na Roblox oraz pola, które możesz używać do przesyłania wiadomości między swoimi doświadczeniami.

O aplikacja

W szerokich zarysach, index.js wykonuje następujące operacje:

  1. Rozpoczyna nowy serwer internetowy za pomocą express.
  2. Zwraca konfigurację Roblox OpenID Connect (OIDC), która obejmuje końcówki do autoryzacji, informacje o użytkowniku itp.Aby uzyskać więcej informacji o tych punktach końcowych, zobacz autoryzacja OAuth 2.0.
  3. Tworzy nowego klienta Open ID za pomocą openid-client i przechowanych przez ciebie danych uwierzytelnienia.Ten klient dramatycznie uprości proces prawidłowego tworzenia i wysyłania żądań HTTP do punktów końcowych OAuth 2.0.
  4. Definiuje trasy dla aplikacja, w tym przekierowania dla przepływów logowania i wylogowania oraz wezwania OAuth 2.0.
  5. Po pomyślnym zalogowaniu przechowuje różne tokeny jako pliki cookie wraz z minimalną informacją użytkownika, którą wyświetla jako HTML za pomocą getHomeHtml.js.