Unity ゲームサーバー (Multiplay) からの呼び出し

Game Server Hosting (Multiplay) を使用して、専用ゲームサーバーからモジュールエンドポイントを呼び出すことができます。

前提条件

  1. Cloud Code を呼び出すゲームサーバーおよび関連リソースは、同じ Unity Dashboard プロジェクト環境 に存在する必要があります。
  2. Game Server Hosting (Multiplay) でオンボードします。

Cloud Code の呼び出し

以下のステップに従って、ゲームサーバーから Cloud Code モジュールエンドポイントを呼び出します。

認証

Game Server Hosting (Multiplay) トークン または ステートレストークン を使用してリクエストを認証できます。受信したトークンを Bearer トークンとしてリクエストヘッダーで HTTP 認証に使用します。

Multiplay トークンでの認証が推奨されます。ステートレストークンで認証するにはサービスアカウントを作成し、秘密鍵を安全に保存する必要がありますが、Multiplay トークンではこれが不要で、管理の複雑さが軽減されます。

Game Server Hosting (Multiplay) トークンを使用した認証

ゲームサーバーで以下のリクエストを実行することで、Game Server Hosting (Multiplay) トークンを取得できます。

curl -X GET http://localhost:8086/v4/token

リクエストでは以下の形式のレスポンスが返されます。

{"token":"<BEARER_TOKEN>", "error":""}

ステートレストークンを使用した認証

ステートレストークンを使用するには、サービスアカウントを作成し、Token Exchange API を呼び出す必要があります。Cloud Code Client API の信頼されているクライアントの認証 に関するページを参照してください。

モジュールエンドポイントの呼び出し

コードベースにネイティブの HTTP ライブラリを使用してモジュールエンドポイントを呼び出すことができます。取得した認証トークンを Bearer トークンとしてリクエストヘッダーで HTTP 認証に使用します。Cloud Code API を使用してエンドポイントを呼び出す CURL リクエストの例は以下のようになります。

curl -X POST -H "Authorization: Bearer <BEARER_TOKEN>" 'https://cloud-code.services.api.unity.com/v1/projects/<PROJECT_ID>/modules/<MODULE_NAME>/<FUNCTION_NAME>'