Skip to content

ユーザー

ユーザーモジュールは、現在ログイン済みプレイヤーの情報と Token を取得する機能を提供します。ゲームがログインなしで全機能を体験できる場合は本モジュールを使用する必要はありません。それ以外の場合は、本モジュールの関連インターフェースを呼び出して機能を実装してください。

JOGOS_SDK 概要ページ内のお使いのゲームエンジンに該当する箇所をお読みになったうえで、以下のように機能を利用できます:

javascript
window.JOGOS_SDK.user;

当前ユーザー情報の取得

以下の方法で現在のプレイヤー情報を取得できます:

javascript
try {
  const user = await window.JOGOS_SDK.user.getUser();
  console.log('Get user result', user);
} catch (err) {
  // 例外処理
  console.error(err);
}

プレイヤーが未登録または未ログインの場合、システムは自動的にログイン/登録ダイアログを開き、ユーザーに登録またはログインを要求します。完了しないとゲームを続行できず、401 未認証、再ログインしてください 例外が返されます。

アカウントが凍結または削除されている場合も、該当する例外情報が返されます。

成功時に返却されるプレイヤーオブジェクトの構造は以下の通りです:

typescript
// ユーザー情報
export interface UserInfo {
  // ユーザー Id
  userId: string;
  // ユーザー名
  username: string;
  // プロフィール画像 URL
  profilePictureUrl: string;
  // ゲーム Id
  gameId: number;
}

JOGOS_SDK のユーザー名は 6–20 文字で、英数字、ピリオド、アンダースコアが利用可能です。

注意: 単一アカウントで複数キャラクターを扱うゲームの注意事項

JOGOS_SDKUserId はプレイヤーアカウントと 1 対 1 で対応しています。ゲーム内で複数キャラクターの作成やサーバー移動によるキャラクター切り替えが可能な場合、サーバー側で該当ロジックを実装し、キャラクターの消失や切り替え不可を防止してください。

ユーザートークンの取得(ゲームサーバーにて協力して接入)

  • サーバーがある場合は必ず接入してください!
  • ユーザートークンには現在ログイン中プレイヤーの関連情報が含まれます。トークンを自サーバーに送信し、検証/デコードして情報を抽出し、ゲームサーバーのユーザー体系と紐付けてください。処理中のユーザーデータセキュリティに十分注意してください。

クライアント側は以下の方法でユーザートークンを取得できます:

javascript
try {
  const token = await window.JOGOS_SDK.user.getUserToken();
  console.log('Get token result', token);
} catch (err) {
  // 例外処理
  console.error(err);
}

トークンの有効期限は 1 時間です。トークンを保存せず、必要に応じて都度本メソッドを呼び出すことを推奨します。

プレイヤーが未登録/未ログインの場合、ログイン/登録ダイアログが自動的に開き、完了するまでゲームを続行できません。さもないと 401 未認証、再ログインしてください 例外が返されます。

アカウントが凍結/削除されている場合も該当する例外情報が返されます。

返却されたトークンは jwt.io にてデコード・テスト可能です。

成功時に返却されるトークン情報は以下の Json データを含みます:

json
{
  "jti": "1899405772252258304",
  "sub": "{\"profilePictureUrl\":\"a33bf366e34d48e984a094fc923d7b06.png\",\"gameId\":\"1\",\"profileDefaultAvatar\":\"default-avatar.png\",\"userId\":\"88E1B72FED537C6943C85C28F639BE0B\",\"username\":\"55895999999999999999\"}",
  "iss": "com:jogos:sdk",
  "iat": 1741688600,
  "exp": 1745288600
}
クライアント側でのトークン復号化は禁止
クライアント側でユーザートークンを復号化しないでください。セキュリティ上好ましくありません。必ずサーバー側で処理を行ってください。

サーバーでリクエストの認証が必要な場合、トークンを自サーバーに送信し、そこでデコード・検証を行います。検証にはユーザートークン公開鍵 https://www.jogos.com/publicKey.json をご利用ください。公開鍵は変更される可能性があるため、認証の度に取得することを推奨します。

次のステップ:サーバーにて認証

サーバー関連 API は サーバー接入インターフェース ページをご参照ください。

ローカルテスト

ローカルテスト時、ユーザーモジュールの各インターフェースはモックデータを返します。