mobage.oauth

概要

このモジュール中の機能は主にMobage Connectとの連携用として用いられます。

機能一覧

mobage.oauthモジュールには以下のメソッドがあります。

メソッド

mobage.oauth.getConnectedStatus

ユーザーにUIを表示する事無く、ログイン状態及びインストール状態を調べる為のメソッドです。ログインかつインストール状態の際には暗黙的なAuthorization Requestを行います。結果は指定した Callback関数に対して渡されます。

構文

パラメータ

params

Object 型のパラメータです。以下に示したプロパティを設定する事が出来ます。

property

title

type

required

description

state

State

string

true

ゲームサーバーで生成しセッションと紐づけたstate文字列を指定して下さい。

scope

Scope

array

false

認可を求める Scope の値を配列として指定して下さい。現状Scopeとして指定出来る値はopenidとcommon_apiのみです。

responseType

Response type

array

false

Response typeの値を配列として指定して下さい。現状Response typeとして指定出来る値はtoken, code, id_tokenのみです。

 

cb

Function 型のパラメータです。
 

説明

ゲームサーバーが発行するログインセッションが無い場合にUserAgentのログイン及びインストール状態を暗黙的に調べる為の機能です。このメソッドを呼び出してもユーザーに何かUIが表示される事は無く、また他のメソッドのようにボタンクリック時などのイベントハンドラ内で実行しなくとも構いません。 またcb引数のFunctionは前項で説明したCallback関数です。このCallback関数のerror, result引数はObjectで、共に同じフィールドを持ちます。

login

Boolean 型のプロパティで、UserAgentがMobage Connectにログインしているかどうかに応じた値が設定されています。

connected

Boolean 型のプロパティで、UserAgentがこのClientをインストールしているかどうかに応じた値が設定されてります。

response

Object 型のプロパティで error 引数の場合は error, error_descriptionプロパティが設定されています。result引数の場合はcode, state, session_stateプロパティが設定されています。
 
Callback関数に渡されるerrorプロパティ一覧

error

description

invalid_request

リクエストパラメータに誤りがある場合

login_required

UserAgent が Mobage Connect にログインしていない場合

access_denied

Mobage Connect サーバーまたはユーザーによって認可が拒否された場合

unauthorized_client

Mobage Connect サーバーが認識する妥当な Client ではない場合

consent_required

同意画面を表示してインストールに同意する必要がある場合

server_error

Mobage Connect サーバー側でシステムエラーが起きた場合

error, result オブジェクト双方に login, connected プロパティが存在するので、実際にはこの値を見てハンドリングする事になります。
 

インストール状態の場合はゲームサーバーが新規にログインセッションを発行し、Mobage Connectにログインしていてインストールはしていない状態の際にインストールボタンを表示させるような分岐を行う際の例を以下に示します。

mobage.oauth.connect

ユーザーにインストールの同意や必要であれば Mobage Connectへのログインを求めるUIを表示し、その実行結果としてログイン状態、インストール状態などをCallback関数に返します。

このメソッドはクリックイベントなどのブラウザによって開始されたイベントハンドラの中で呼び出して下さい。

 

構文

 

パラメータ

params

Object型のパラメータです。以下に示したプロパティを設定する事が出来ます。
 

property

title

type

required

description

state

State

string

true

ゲームサーバーで生成しセッションと紐づけたstate文字列を指定して下さい。

scope

Scope

array

false

認可を求める Scope の値を配列として指定して下さい。現状Scopeとして指定出来る値はopenidとcommon_apiのみです。指定しない場合はopenidとcommon_apiの両方が指定された事になります。

responseType

Response type

array

false

Response typeの値を配列として指定して下さい。現状 Response typeとして指定出来る値はtoken, code, id_tokenのみです。

loginCustomTheme

ログイン画面用カスタムテーマ

string

false

ログイン画面用にカスタマイズされたカスタムテーマを文字列で指定できます。カスタムテーマはデベロッパーサイトで指定してください。 ※ JS SDK 3.1.0 より指定できます。

loginAppearanceVersion

ログイン画面用カスタムテーマのバージョン

number

false

ログイン画面用にカスタマイズされたカスタムテーマのバージョンを指定できます。カスタムテーマのバージョンはデベロッパーサイトでご確認ください。※ JS SDK 3.1.0 より指定できます。

authCustomTheme

NBPF 認可画面用カスタムテーマ

string

false

NBPF 認可用にカスタマイズされたカスタムテーマを文字列で指定できます。カスタムテーマはデベロッパーサイトで指定してください。※ JS SDK 3.1.0 より指定できます。

authAppearanceVersion

NBPF 認可画面用カスタムテーマのバージョン

number

false

NBPF 認可画面用にカスタマイズされたカスタムテーマのバージョンを指定できます。カスタムテーマのバージョンはデベロッパーサイトでご確認ください。※ JS SDK 3.1.0 より指定できます。

cb

Function型のパラメータです。
 

説明

このメソッドはUIを表示した上でユーザーにインストールの同意やログインを求める為のメソッドです、上で説明したmobage.oauth.getConnectedStatus()とほぼ同じインターフェースですが、 
このメソッドはログイン状態ではない、またはインストール状態でない場合に必ずUIが表示されます。 また特にログイン状態ではない場合にはセキュリティ上の観点から新しいタブ上でログインフォームが表示されます。 
ログイン状態でインストールしていない場合は画面上にオーバーレイする形で同意画面が表示されます。

このメソッドはwindow.open()によって新しいタブが開かれる場合があるので、クリックイベントなどのブラウザによって開始されたイベントハンドラなどの中で呼び出す必要があります。 この際に XMLHttpRequest などの非同期処理のコールバックなどから呼び出すとwindow.open()の呼び出し時にブラウザのポップアップブロック等によって新しいwindowの作成に失敗する場合があります。 インストール用のボタンをクリックした際に、このメソッドを呼び出しゲームサーバーのログインセッションを開始する例を以下に示します。
 

mobage.oauth.disconnect

ユーザーにこのClientをアンインストールする為のUIを表示し、その実行結果をCallback関数に返します。
 

構文

 

パラメータ

params

Object型のパラメータです。以下に示したプロパティを設定する事が出来ます。

property

title

type

required

description

theme

テーマ

string

false

プリセットされたデザインテーマです。現状は default または dark から選択します。省略された場合は default になります。

cb

Function型のパラメータです。
 
このCallback関数のerror引数はObjectで、プロパティとしてerror, error_descriptionを持ちます。

Callback関数に渡されるerrorプロパティ一覧

error

description

not_connected

インストール状態ではない場合

user_canceled

ユーザーによってアンインストールがキャンセルされた場合

server_error

Mobage Connect サーバー側でシステムエラーが起きた場合

 

説明

このメソッドはユーザーにこのClientをアンインストールする為のUIを表示した上でその実行結果を返します。

ユーザー保護のため、この機能を必ずゲーム中に組み込んで下さい。

 

ゲームをアンインストールする例を以下に示します。

mobage.oauth.logout

このメソッドはMobage ConnectからUserAgentをログアウトさせる為のUIを開くメソッドです。戻り値はCallback関数経由で受け取ります。
通常、ログアウトが成功した場合は明示的にゲームサーバー上からもUserAgentをログアウトさせる必要があります。
 

構文

 

パラメータ

params

Object型のパラメータです。以下に示したプロパティを設定する事が出来ます。
 

cb

Function型のパラメータです。
 

params

Object型のパラメータです。以下に示したプロパティを設定する事が出来ます。

property

title

type

required

description

theme

テーマ

string

false

プリセットされたデザインテーマです。現状はdefaultまたはdarkから選択します。省略された場合はdefaultになります。

 
このCallback関数のerror引数はObjectで、プロパティとしてerror, error_descriptionを持ちます。成功時のresult引数には特にプロパティはありません。

Callback関数に渡されるerrorプロパティ一覧

error

description

not_login

ログイン状態ではない場合

user_canceled

ユーザーによってアンインストールがキャンセルされた場合

server_error

Mobage Connect サーバー側でシステムエラーが起きた場合

 
ゲームから明示的にMobage Connect上のUserAgentのログインセッションを破棄させたい場合に使います。またこの際には通常、ゲームサーバーが発行するログインセッションも破棄させる必要があります。
 

Mobage Connectでログアウトさせ、成功した場合にゲームサーバーのログインセッションを破棄する例を以下に例を示します。

 

PREVIOUS

mobage

NEXT

mobage.bank