Roblox 提供一個名為 node.js 的示例應用程序,讓您看到如何使用 OAuth 2.0 來讓用戶登入 Roblox 帳戶並在他們的體驗上播放訊息。這個應用程序使用 授權代碼流程 without PKCE 和 PKCE ,因此適用於私人服務器,例如私人服務器。
在下載 .zip 檔案後,將它加入自己的文件夾。
註冊應用程式
第一步設置應用程序是在 Roblox 網站上註冊它 和複製客戶端 ID 和秘密某個安全地點 然後按照這些設置進行標準註冊步驟:
- 在 權限 下,添加 openid、profile 和 1> universe-messaging-service:publis發佈1> 範圍。
- 在 重新向來 URL 下,添加 http://localhost:3000/oauth/callback 重新向來。如果您想要為您的應用程App使用非預設端口,請在此指定。
設定環境變數
不建議您將環境變數儲存在代碼中,而是在應用程式中使用環境變數來存取您的客戶端 ID 和秘密。 添加環境變數的過程會隨著操作系統而異。
在 Windows 上執行以下 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.
在 Mac 和大多數 Linux 分餅上,在終端執行這些指令:
export ROBLOX_CLIENT_ID=your_client_id_hereexport ROBLOX_CLIENT_SECRET=your_client_secret_hereexport ROBLOX_PORT=3000 # Optional. Default is 3000.
如果您在儲存應用程App時在引用網頁上指定了非預設港口,請務必在 ROBLOX_PORT 變量。
安裝屬性
app 有一些需要,在 package.json 中顯示。要安裝它們,請執行:
npm ci
執行應用程式
要開始 app,請 執行:
npm start
然後在網頁瀏覽器中導航至 http://localhost:3000 (或非預設端口)。
app 會立即導航您到 Roblox 登入頁面,在此頁面上您可以登入、確認 app 要求的權限,並按一下 確認並提供存取 。
Roblox 然後將您重新導向到 localhost,您可以看到 app 現在顯示一些最小限度的用戶信息,連結到您個人在 Roblox 的個人資料,並且您可以使用此些字段來在您的體驗中廣播訊息。
關於App
在廣泛的範圍內,index.js 執行以下操作:
- 使用 express 啟動新的網頁服務器。
- 取回 Roblox OpenID Connect (OIDC) 設定,包括用於授權、用戶資訊等的端點。有關這些端點的更多資訊,請參閱 OAuth 2.0 驗證。
- 使用 openid-client 和您的存儲資料來建立新的開啟ID客戶。此客戶將過程變得相當簡單,並使用OAuth 2.0端點傳送HTTP請求。
- 為 app 定義路線,包括登入和登出流程的重新定向和 OAuth 2.0 回回調。
- 之後成功登入後,會將各種代幣以餅乾的形式儲存在,並且以 getHomeHtml.js 的協助顯示為 HTML。