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