Access Token の取得

 

3-legged 認証のために access token credential を取得します。

URI Fragment

/request_token

署名方式

3-legged(Proxy モデル)
ただし、Access Token と Access Token の代わりに Temporary Token と Temporary Token Secret を利用します。

OAuth 認証についてはこちら、リクエストの署名や Authorization ヘッダーの作成についてはこちらを参照して下さい。

HTTP メソッド

POST

リクエストヘッダー

  • Authorization は必須になります。
  • Content-Type: application/x-www-form-urlencoded

URL クエリパラメータ

なし

リクエスト本文

なし

レスポンスコード

HTTP ステータスコード

HTTP ステータスメッセージ

説明

200

OK

データの取得が成功した場合

400

Bad Request

クライアント側のリクエストデータが不正です

401

Unauthorized

認証エラーです

403

Forbidden

リソースは存在するが認証エラー以外の理由でアクセス出来ない場合です

500

Internal Server Error

API サーバー側のエラーです

503

Service Unavailable

一時的に API が利用不可となっている場合です

レスポンス本文

Content-Type: application/x-www-form-urlencoded

パラメータ名

説明

oauth_token

REST API を利用するために必要な Access Token です。

oauth_token_secret

REST API を利用するために必要な Access Token Secret です。Game クライアントに渡さずにゲームサーバー上に保持すべき。

oauth2_token

Bank API を利用するために必要な oauth2_token です。

Token Credential (oauth_token, oauth2_token) の管理は、Mobage の UserID 単位で行わず、必ずセッション ID 等のセッション単位で行って下さい。
不適切な事例として、以下の様なものがあります。

  • 条件
    • Token Credential を UserID 単位でデータベースに格納している。
    • Android と iOS で起動時に 3-legged 認証を行い、データベース上の Token Credential を上書きしている。
  • 上記条件を満たす場合に、以下の挙動を行った場合
    • iOS で一旦ゲームを起動してサスペンド状態にした後に、Android でゲームを起動し、再度 iOS でレジュームしゲームを進めた。
  • 発生する不具合
    • iOS 側でアイテムを購入したが、iOS のゲームポイントの残高が減らず、Android のモバコインの残高が減少する。

Mobage オープンプラットフォームでは、デバイスの区別は Token Credential に紐付いて行われます。そのため、どちらかのデバイスを使って発行した Token Credential はデバイス間で共有することができません。セッション ID ごとに Token Credential が管理されているのであればこのような心配も無くなりますので、適切な実装をお願いします。

実例

Base String
HTTP リクエスト
HTTP レスポンス

PREVIOUS

Temporary Token の取得

NEXT

Bank API