クイックスタート: PlayFab クライアントライブラリ (NodeJS)

最初の PlayFab API 呼び出しとプレーヤーの認証を行うための、の PlayFab クライアントライブラリで NodeJS を使い始める。 手順に従ってパッケージをインストールし、基本的なタスクのコード例を試します。

前提条件

設定

次のコマンドは、Windows、MacOS、Linux で動作します。

  1. プロジェクト用の新しいフォルダーを作成する {NodeProjLocation}:

    GettingStarted.js

  2. プロジェクトフォルダーでコマンドウィンドウを開きます。

  3. 次のコマンドを実行します。

    npm install playfab-sdk --save

    (このウィンドウは開いたままにしておきます (後で使用します)。

PlayFab のインストールが完了しました。

コード例

クライアントを認証する

このガイドでは、GUI またはオンスクリーンのフィードバックなしで最初の PlayFab API 呼び出しを行うための最小の手順を示します。 コンソールログで確認が行われます。 パラメーターと戻り値の詳細については、最初にPostman テンプレートを使うことをお勧めします。

お気に入りのテキストエディターで、次のように GettingStarted.js の内容を更新します。

注意

この例でオブジェクトの正しい形式を調べるには loginRequestLoginwithcustomidの API リファレンスを参照してください。

var PlayFab = require("./node_modules/playfab-sdk/Scripts/PlayFab/PlayFab");
var PlayFabClient = require("./node_modules/playfab-sdk/Scripts/PlayFab/PlayFabClient");

function DoExampleLoginWithCustomID() {
    PlayFab.settings.titleId = "144";
    var loginRequest = {
        // Currently, you need to look up the correct format for this object in the API reference for LoginWithCustomID. The Request Headers and Request Body are included as keys and values in the request object.
        TitleId: PlayFab.settings.titleId,
        CustomId: "GettingStartedGuide",
        CreateAccount: true
    };

    // For functions in the Node SDK, the first parameter will be the request object and the second parameter will be the callback function. The callback function executes after the request returns.
    PlayFabClient.LoginWithCustomID(loginRequest, LoginCallback);
}

function LoginCallback(error, result) {
    if (result !== null) {
        console.log("Congratulations, you made your first successful API call!");
    } else if (error !== null) {
        console.log("Something went wrong with your first API call.");
        console.log("Here's some debug information:");
        console.log(CompileErrorReport(error));
    }
}

// This is a utility function we haven't put into the core SDK yet. Feel free to use it.
function CompileErrorReport(error) {
    if (error == null)
        return "";
    var fullErrors = error.errorMessage;
    for (var paramName in error.errorDetails)
        for (var msgIdx in error.errorDetails[paramName])
            fullErrors += "\n" + paramName + ": " + error.errorDetails[paramName][msgIdx];
    return fullErrors;
}

// Kick off the acutla login call
DoExampleLoginWithCustomID();

コードの実行

  1. インストール中に開いたコンソールウィンドウで、次のコマンドを実行します。

    node GettingStarted.js

    結果として、次のテキストが表示されます。

    "おめでとうございましたが、API 通話を初めてお使いになりました。"

これで、他の API 通話を開始してゲームを構築できるようになりました。

利用可能なすべてのクライアント API 呼び出しの一覧については、「 Playfab Api リファレンスドキュメント」をご覧ください。

コードの Deconstruct

このセクションでは、ノードのクイックスタートコードの各部分について詳しく説明します。

ノード SDK の場合、の関数は、 PlayFabClientSDK HTTP 要求の後に名前が付けられます。 たとえば、この関数に対応する HTTP 要求 LoginWithCustomID は、"LoginWithCustomID" とも呼ばれます。 要求ヘッダーと要求本文は、キーと値として JavaScript 要求オブジェクトにパックされます。

  • 行単位の内訳 GettingStarted.js
    • PlayFab.settings.titleId = "xxxx";

      • すべての PlayFab 開発者は、ゲームマネージャーでタイトルを作成します。 ゲームを公開するときは、ゲームに TitleId することをコード化する必要があります。 これにより、クライアントは PlayFab 内の正しいデータにアクセスする方法を把握できます。 ほとんどのユーザーは、PlayFab 作業を行う必須の手順を検討してください。
    • var loginRequest = { TitleId: PlayFab.settings.titleId, CustomId: "GettingStartedGuide", CreateAccount: true };

      • ほとんどの PlayFab API メソッドには入力パラメーターが必要です。これらの入力パラメーターは、要求オブジェクトにパックされます。
      • 各 API メソッドには、オプションパラメーターと必須パラメーターを組み合わせた一意の要求オブジェクトが必要です。
        • LoginWithCustomIDRequest は、プレーヤーを一意に識別する必須パラメーターがあり CustomId ます。これにより、 CreateAccount この呼び出しで新しいアカウントを作成することができます。 TitleId JavaScript の別の必須パラメーターであり、一致している必要があり PlayFab.settings.titleId ます。
        • 検索場所の詳細について TitleId は、「ゲームマネージャーのクイックスタート」を参照してください。
  • この場合は、、、、 TitleId customId の各 CreateAccount 要求の本文に LoginWithCustomID あります。
    • PlayFabClientSDK.LoginWithCustomID(loginRequest, LoginCallback);

      • これにより、非同期要求が開始され、 LoginWithCustomID API 呼び出しの完了時に LoginCallback が呼び出されます。
    • Login の場合、ほとんどの開発者は、より適切な login メソッドを使用します。

  • LoginCallback 2つのパラメーター (and) が含まれてい error result ます。
    • 成功すると、と error null result いう API に従って、要求された情報がオブジェクトに含まれます。
      • これには、 result プレーヤーに関する基本的な情報が含まれていますが、ほとんどのユーザーは、他の api を呼び出す前に、単に login を必須の手順にします。
  • エラーではない場合は null 、API が失敗したことを示します。

トラブルシューティング

  • API 呼び出しは、多くの理由で失敗することがあり、常に失敗を処理する必要があります。
  • Error オブジェクトには、エラー名、エラーコード、およびエラーメッセージが含まれます。 この情報は、エラーを診断するのに十分なものである必要があります。
  • API の呼び出しが失敗する理由 (可能性の順):
    • PlayFabSettings.TitleId が設定されていません。 タイトルに設定することを忘れた場合 TitleId は、何も機能しません。
    • 要求パラメーター。 特定の API 呼び出しに対して適切または必須の情報を指定していない場合は、失敗します。 error.errorMessage詳細については、、 error.errorDetails 、またはを参照してください error.GenerateErrorReport()
    • デバイス接続の問題。 携帯電話は、接続を常に切断/回復するため、どのような時点でも、すべての API 通話がランダムに失敗した後、すぐに作業を行うことができます。 トンネルに入ると、完全に切断されることがあります。
    • PlayFab サーバーの問題。 すべてのソフトウェアと同様に、問題が発生する可能性があります。 最新情報については、リリースノートを参照してください。
  • インターネットの信頼性は、100% にはありません。 メッセージが破損しているか、PlayFab サーバーに到達していないことがあります。

次の手順

このクイックスタートでは、ユーザーを認証するための簡単な手順を示します。 ユーザー認証の詳細については、「ログインの基本とベストプラクティス」を参照してください。

コーディングをお楽しみください!