クイックスタート: NodeJS 向け PlayFab クライアント ライブラリ
NodeJS 向け PlayFab クライアント ライブラリを使用して、最初の PlayFab API 呼び出しを行い、プレイヤーを認証する方法を学びます。パッケージをインストールし、基本的なタスクのサンプル コードを試すための手順に従ってください。前提条件
- PlayFab 開発者アカウント。タイトルの作成と TitleId の確認方法については、Game Manager クイックスタート を参照してください。
- Node.js
- Node が PATH 環境変数に含まれている必要があります。インストーラーを使用した場合、デフォルトの場所 C:/Program Files (x86)/nodejs/ に設定されている可能性があります。
セットアップ
以下のコマンドは Windows、macOS、Linux で動作します。-
プロジェクト用の新しいフォルダー {NodeProjLocation} を作成します:
GettingStarted.js - プロジェクト フォルダーでコマンド ウィンドウを開きます。
-
次のコマンドを実行します:
npm install playfab-sdk --save(このウィンドウは開いたままにしてください。後で再度使用します。)
コード例
クライアントを認証する
このガイドでは、GUI や画面上のフィードバックを使用せずに、最初の PlayFab API 呼び出しを行うための最小限の手順を説明します。確認はコンソール ログで行います。パラメーターと戻り値の詳細については、最初に Postman テンプレート を使用することをお勧めします。 お好みのテキスト エディターで、GettingStarted.js の内容を次のように更新します。この例の
loginRequest オブジェクトの正しい形式を確認するには、LoginWithCustomID の API リファレンスを参照してください。コードを実行する
-
インストール中に開いたコンソール ウィンドウで、次のコマンドを実行します:
node GettingStarted.js結果として次のテキストが表示されます: “Congratulations, you made your first successful API call!”
コードの詳細解説
このセクションでは、Node クイックスタート コードの各部分を詳細に説明します。 Node SDK では、PlayFabClientSDK 内の関数は HTTP リクエストにちなんで名付けられています。たとえば、LoginWithCustomID 関数に対応する HTTP リクエストも「LoginWithCustomID」という名前です。リクエスト ヘッダーとリクエスト本文は、キーと値として JavaScript のリクエスト オブジェクトにパックされます。
GettingStarted.jsの行ごとの解説-
PlayFab.settings.titleId = "xxxx";- すべての PlayFab 開発者は、Game Manager でタイトルを作成します。ゲームを公開する際、その TitleId をゲームにコーディングする必要があります。これにより、クライアントは PlayFab 内の正しいデータへのアクセス方法を知ることができます。ほとんどのユーザーにとって、これは PlayFab を動作させるために必要な手順と考えてください。
-
var loginRequest = { TitleId: PlayFab.settings.titleId, CustomId: "GettingStartedGuide", CreateAccount: true };- ほとんどの PlayFab API メソッドは入力パラメーターを必要とし、それらの入力パラメーターはリクエスト オブジェクトにまとめられます。
- すべての API メソッドには、オプションと必須のパラメーターが混在した一意のリクエスト オブジェクトが必要です。
LoginWithCustomIDRequestには、プレイヤーを一意に識別する必須パラメーターCustomIdと、この呼び出しで新しいアカウントの作成を許可するCreateAccountがあります。TitleIdは JavaScript のもう 1 つの必須パラメーターで、PlayFab.settings.titleIdと一致する必要があります。TitleIdの場所については、Game Manager クイックスタート を参照してください。
-
- この場合、
TitleId、customId、CreateAccountはLoginWithCustomIDのリクエスト本文からのものです。-
PlayFabClientSDK.LoginWithCustomID(loginRequest, LoginCallback);- これは
LoginWithCustomIDへの非同期リクエストを開始し、API 呼び出しが完了すると LoginCallback を呼び出します。
- これは
-
ログインについては、ほとんどの開発者はより適切なログイン メソッドを使用することを望むでしょう。
- すべてのログイン メソッドと入力パラメーターの一覧については、PlayFab ログイン ドキュメント を参照してください。一般的な選択肢は次のとおりです。
-
LoginCallbackには、errorとresultの 2 つのパラメーターが含まれます。- 成功した場合、
errorはnullとなり、resultオブジェクトには呼び出された API に応じた要求された情報が含まれます。- この
resultにはプレイヤーに関する基本情報が含まれますが、ほとんどのユーザーにとって、ログインは他の API を呼び出す前の必須ステップにすぎません。
- この
- 成功した場合、
- error が
nullでない場合、API は失敗しています。
トラブルシューティング
- API 呼び出しはさまざまな理由で失敗する可能性があるため、常に失敗を処理するようにしてください。
- error オブジェクトには、エラー名、エラー コード、エラー メッセージが含まれます。これらの情報を組み合わせることで、エラーの診断に十分な情報が得られるはずです。
- API 呼び出しが失敗する理由 (可能性の高い順):
PlayFabSettings.TitleIdが設定されていない。TitleIdをタイトルに設定するのを忘れた場合、何も動作しません。- リクエスト パラメーター。特定の API 呼び出しに対して正しい情報や必要な情報を提供していない場合、失敗します。詳細については、
error.errorMessage、error.errorDetails、またはerror.GenerateErrorReport()を参照してください。 - デバイスの接続の問題。携帯電話は接続を頻繁に失ったり回復したりします。そのため、いつでも API 呼び出しがランダムに失敗し、その後すぐに動作することがあります。トンネルに入ると、完全に切断される可能性があります。
- PlayFab サーバーの問題。すべてのソフトウェアと同様に、問題が発生する可能性があります。更新については リリース ノート を参照してください。
- インターネットは 100% 信頼できるわけではありません。メッセージが破損したり、PlayFab サーバーに到達しなかったりすることがあります。
- グローバル API メソッド エラー コードは、グローバル API メソッド エラー コード を参照してください。
- 問題のデバッグに苦労しており、エラー情報内の情報だけでは不十分な場合は、フォーラム にアクセスしてください。
