Roblox は、OAuth 2.0 を使用してユーザーが Roblox アカウントにログインし、エクスペリエンス全体でメッセージを配信する方法を示すノード.jsサンプルアプリを提供します。このアプリは PKCE を使用しない 認証コードフロー を使用しており、つまり私立クライアント、例えばプライベートサーバーのユ
.zip ファイルをダウンロードした後、それを自分のフォルダに抽出します。
アプリの登録
アプリを設定する最初のステップは、Roblox ウェブサイトに登録することです。クライアントのIDと秘密の場所をコピーして、次のステップに進みましょう:
- Under 権限 , add the openid , profile , and 1> universe-messaging-service:publish1> スコープを追加します。
- URLをリダイレクト して、http://localhost:3000/oauth/callback を追加します。アプリのデフォルトポートを使用したい場合は、ここに指定してください。
環境変数を設定する
コードで保存する代わりに、アプリはクライアントの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.
On Mac とほとんどの Linux 配布で、これらのコマンドをターミナルで実行します:
export ROBLOX_CLIENT_ID=your_client_id_hereexport ROBLOX_CLIENT_SECRET=your_client_secret_hereexport ROBLOX_PORT=3000 # Optional. Default is 3000.
アプリを登録するときに、デフォルトのポートでないポートを指定した場合、ROBLOX_PORT 変数を追加してください。
ディペンダビーをインストールする
アプリには、package.json に表示される複数のディペンダシーがあります。それらをインストールするには、実行してください:
npm ci
アプリの実行
アプリを開始するには、実行:
npm start
次に、ウェブブラウザで http://localhost:3000 (またはデフォルトのポートで) に移動します。
アプリはすぐに Roblox ログイン画面に移動し、ここでログインしたり、アプリがリクエストする権限を確認したり、 確認してアクセスを与える をクリックします。
Roblox は、localhost にあなたをリダイレクトし、アプリが今、最小限のユーザー情報を表示し、Roblox プロフィールにリンクされたプロフィール、およびエクスペリエンス全体でメッセージを配信するために使用できるフィールドを表示します。
アプリについて
一言で言うと、index.js は次の操作を実装しています:
- express を使用して新しいウェブサーバーを開始します。
- Roblox OpenID Connect (OIDC) 構成を取得することで、認証、ユーザー情報などのエンドポイントを含むエンドポイントを取得します。For more information about these endpoints, see OAuth 2.0 Authentication .
- 新しい openid-client を作成し、ストレージされたクレデンシャルを使用して、HTTP リクエストを OAuth 2.0 エンドポイントに正しく形成および送信するプロセスをドラマチックに簡素化します。
- アプリのルートを定義し、ログインとログアウトのフロー、OAuth 2.0 コールバックなどに誘導するリダイレクトを含みます。
- 成功したログイン後、さまざまなトークンをクッキーと一緒に保存し、getHomeHtml.js によって表示される少しのユーザー情報と一緒にHTMLで表示されます。