ログイン / ブラウザゲームでの登録遅延
 ドキュメントに戻る

ログイン

  • 統合ガイド

  • 認証オプション

  • ユーザーデータストレージ

  • セキュリティ

  • カスタマイゼーション

  • 通信サービスプロバイダー

  • 特徴

  • ハウツー

  • 拡張機能

  • 法的設定

  • リファレンス

  • ブラウザゲームでの登録遅延

    どのように動作するか

    ユーザーは、登録をしなくてもブラウザでゲームを開始することができます。一定時間後に登録を求められ、ゲームの進行状況が保存されます。登録待ち時間はゲーム側で実装する必要があります。

    ユーザーとゲームの相互作用の流れは以下の通り:

    1. 無許可のユーザーがゲームを開始します。
    2. ゲームは、セッション情報とユーザーを関連付けます。
    3. 一定時間が経過すると、ゲームを続けるためにユーザー登録を求められます。
    4. ゲームは、渡されたセッション情報を含む登録リクエストをエクソーラログインサーバーに送信します。
    5. エクソーラログインサーバはユーザを登録します。登録の結果、ユーザーJWTにはセッションに関する情報が渡されます。
    6. ゲームは登録したユーザーに進行状況を転送します。
    7. ユーザーは許可された通りにプレイを続けます。

    お知らせ
    ユーザーのセッションに関する情報として、ユーザーの進行状況に関する情報が記載されたセッション識別子またはJSON文字列が渡されます。

    使用に適した方

    ログインがすでに統合されており、ブラウザゲームを持っているパートナー。

    入手方法

    ゲームに登録した後のユーザーの進行状況を保存するには:

    1. 登録時にユーザーのセッション情報を渡します
    2. ゲームの進行状況をユーザーに転送します

    ユーザのセッションの情報を渡す

    ユーザーのセッションに関する情報の受け渡しは、ログイン統合に依存します:

    Login API経由で統合する

    payloadパラメータをRegister new userリクエストに渡します。このパラメータの値として、ユーザーのセッションに関する情報を指定します。

    リクエストの例(ユーザのセッションの識別子):

    Copy
    Full screen
    Small screen
    http
    • http
    • curl

    POST https://login.xsolla.com/api/user?login_url=https://example.com&projectId=00000000-0000-0000-0000-000000000000&payload=my_session_123 HTTP/1.1
    Content-Type: application/json
    
    {
      "username": "John Smith",
      "password": "123456",
      "email": "john-email@email.com"
    }
    curl --request POST \
      --url 'https://login.xsolla.com/api/user?login_url=https%3A%2F%2Fexample.com&projectId=00000000-0000-0000-0000-000000000000&payload=my_session_123' \
      --header 'content-type: application/json' \
      --data '{"username":"John Smith","password":"123456","email":"john-email@email.com"}'

    リクエストの例(ユーザーの進捗情報が記載されたJSON文字列):

    Copy
    Full screen
    Small screen
    http
    • http
    • curl

    POST https://login.xsolla.com/api/user?login_url=https://example.com&projectId=00000000-0000-0000-0000-000000000000&payload={"coins":120,"lvl":2} HTTP/1.1
    Content-Type: application/json
    
    {
      "username": "John Smith",
      "password": "123456",
      "email": "john-email@email.com"
    }
    curl --request POST \
      --url 'https://login.xsolla.com/api/user?login_url=https%3A%2F%2Fexample.com&projectId=00000000-0000-0000-0000-000000000000&payload=%7B%22coins%22%3A120%2C%22lvl%22%3A2%7D' \
      --header 'content-type: application/json' \
      --data '{"username":"John Smith","password":"123456","email":"john-email@email.com"}'

    ログインウィジェット経由で統合する

    payloadパラメータをウィジェット初期化コードに追加します。このパラメーターの値として、ユーザーのセッションに関する情報を指定します。

    ウィジェットの初期化コードの例(ユーザーのセッションの識別子):

    Copy
    Full screen
    Small screen

    <script>
    const xl = new XsollaLogin.Widget({
      projectId: '00000000-0000-0000-0000-000000000000',
      preferredLocale: 'en_US',
      callbackUrl: 'https://example.com',
      payload: 'my_session_123'
    });
    </script>

    ウィジェットの初期化コードの例(ユーザーの進行状況を示すJSON文字列):

    Copy
    Full screen
    Small screen

    <script>
    const xl = new XsollaLogin.Widget({
      projectId: '00000000-0000-0000-0000-000000000000',
      preferredLocale: 'en_US',
      callbackUrl: 'https://example.com',
      payload: '{"coins":120,"lvl":2}'
    });
    </script>

    ゲームの進行状況をユーザーに転送する

    登録後、ユーザーJWTpayloadクレームにユーザーのセッションに関する情報が渡されます。この情報を使用して、セッション中に受信した進捗状況を転送します。登録されたユーザーの識別子は、ユーザーJWTsubクレームで確認できます。

    JWT payloadの例(ユーザーのセッションの識別子):

    Copy
    Full screen
    Small screen

    {
      "email": "john-email@email.com",
      "exp": 1597904900,
      "iat": 1597818500,
      "is_master": true,
      "iss": "https://login.xsolla.com",
      "payload": "my_session_123",
      "promo_email_agreement": true,
      "publisher_id": 0,
      "sub": "00000000-0000-0000-0000-000000000000",
      "type": "xsolla_login",
      "username": "John Smith",
      "xsolla_login_access_key": "422nH1zNMIVKCesi7r4YdQXQY-jgbf2CIcvGdCREDIA",
      "xsolla_login_project_id": "00000000-0000-0000-0000-000000000000"
    }

    JWT payloadの例(ユーザーの進行状況に関する情報を含むJSON文字列):

    Copy
    Full screen
    Small screen

    {
      "email": "john-email@email.com",
      "exp": 1597904900,
      "iat": 1597818500,
      "is_master": true,
      "iss": "https://login.xsolla.com",
      "payload": "{\"coins\":120,\"lvl\":2}",
      "promo_email_agreement": true,
      "publisher_id": 0,
      "sub": "00000000-0000-0000-0000-000000000000",
      "type": "xsolla_login",
      "username": "John Smith",
      "xsolla_login_access_key": "422nH1zNMIVKCesi7r4YdQXQY-jgbf2CIcvGdCREDIA",
      "xsolla_login_project_id": "00000000-0000-0000-0000-000000000000"
    }

    この記事は役に立ちましたか?
    ありがとうございます!
    改善できることはありますか? メッセージ
    申し訳ありません
    この記事が参考にならなかった理由を説明してください。 メッセージ
    ご意見ありがとうございました!
    あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
    このページを評価する
    このページを評価する
    改善できることはありますか?

    答えたくない

    ご意見ありがとうございました!
    最終更新日: 2023年2月27日

    誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。

    問題を報告する
    当社は常にコンテンツを見直しています。お客様のご意見は改善に役立ちます。
    フォローアップ用のメールをご提供してください
    ご意見ありがとうございました!