mixiアプリ » 技術仕様(新方式) » モバイル » ユーザ認可について
ユーザ認可について
mixi Graph API や UserFlow APIを利用するには、ユーザ認可を行う必要があります。ここでは、mixiアプリモバイルでユーザ認可を行う方法について説明します。
ユーザ認可
mixiアプリモバイルからユーザ認可画面に遷移するには、formタグにてauth:graphapiという記述を使用します。メソッドはPOSTのみをサポートしています。
具体的には、HTMLのformタグが持つaction属性に以下のように記述します。
auth:graphapi
パラメータには以下を指定します。
| パラメータ名 | 指定する値 |
|---|---|
| response_type | "code" |
| scope | 半角スペースを区切り文字として、認可したいスコープを列挙した文字列 |
| state |
RedirectURIへリダイレクトする際に、渡されるパラメータ。省略可。 ※セッションを維持するために必要となる値があれば、このパラメータに指定します。ユーザの認可後に行われるリダイレクト時にこの値が含まれます。 |
scopeで指定するスコープについては、mixi Graph APIの各APIドキュメントをご確認ください。
以下に例を示します。
<form action="auth:graphapi" method="POST"> <input type="hidden" name="response_type" value="code" /> <input type="hidden" name="scope" value="mixi_apps2 r_profile r_voice w_voice" /> <input type="hidden" name="state" value="1234567890" /> <input type="submit" value="認可を行う" /> </form>
ユーザが認可もしくは認可拒否を行うと、アプリ登録時に設定されているRedirectURIに遷移します。
ユーザが認可した場合は、RedirectURIのパラメータとして、以下の値が返却されます。
| パラメータ名 | 概要 |
|---|---|
| code | Authorization Code |
| state | 認可画面遷移時に指定されていた場合、その値が引き継がれます。 |
この Authorization Code から mixi Graph API のアクセスに必要なアクセストークンを取得することができます。取得の仕方については、mixi Graph API の リフレッシュトークン、アクセストークンの入手 をご参照ください。
なお、発行されたAuthorization Codeの有効期限は3分となります。
ユーザが認可拒否をした場合など、認可されなかった場合には以下のようなパラメータが返却されます。
| パラメータ名 | 概要 |
|---|---|
| error | エラー内容 |
| state | ダイアログ呼び出し時に指定したstateの値 |
ユーザによる確認を必要としないスコープについて
以下に挙げるスコープの認可をする場合、ユーザ認可のための画面が表示されずに Authorization Code が発行されます。
- mixi_apps2
- r_profile
- r_profile_blood_type
- r_profile_birthday
- r_profile_gender
なお、これらのスコープと同時に他のスコープを指定した場合には、通常通りユーザ認可のための画面が表示されます。