匿名ユーザーとしてのアクセス
匿名ユーザーとして REST API を実行する方法には、以下の 2 通りがあります。
Basic 認証を利用する方法
匿名ユーザーとしてアクセスする度に Basic 認証を行う方式です。
Basic 認証は、AppID と任意の値をそれぞれユーザー名、パスワードとして指定して行います。具体的には AppID と任意の値をコロン(:) で連結した文字列を Base64 でエンコードしたものを Authorization: Basic
ヘッダに埋め込んでリクエストを送信します。
一例として、AppID が 12345678
、任意の値が 1234567890abcdef1234567890abcdef
の場合、これらの値をコロンで連結した 12345678:1234567890abcdef1234567890abcdef
を Base64 でエンコードした MTIzNDU2Nzg6MTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4OTBhYmNkZWY=
を Authorization: Basic
に埋め込みます。
匿名ユーザートークンを指定する方法
最初に匿名ユーザートークンを取得し、後続の処理ではこの匿名ユーザートークンを HTTP ヘッダ Authorization: Bearer
に埋め込む方式です。
以下に、匿名ユーザートークンを取得する例をあげます。
curl -v -X POST \
-H "Authorization: Basic {BASE64_ENCODED_APPID_AND_APPKEY}" \
-H "Content-Type: application/json" \
"https://api-jp.kii.com/api/apps/{APP_ID}/oauth2/token" \
-d '{
"grant_type": "client_credentials",
"client_id": "{APP_ID}",
"client_secret": "{APP_KEY}",
"expiresAt": {EXPIRED_TIME}
}'
匿名ユーザートークンの取得は Basic 認証を使って行います。Basic 認証を利用する方法 で解説したように、{BASE64_ENCODED_APPID_AND_APPKEY}
には AppID と任意の値をコロン(:) で連結した文字列を Base64 エンコードしたものを入れてください。
{APP_ID}
と {APP_KEY}
には、それぞれアプリの AppID と任意の値を入れてください。さらに expiresAt
パラメータを指定することで匿名ユーザートークンの有効期限(UNIX 時間・ミリ秒、UTC)が設定できます。有効期限の設定がない場合、匿名ユーザートークンは永久的に有効となります。
正しい AppID が渡されると Kii Cloud は次のように応答します。応答中の "access_token" が匿名ユーザートークンです。また "expires_in" は、この匿名ユーザートークンが有効な時間(秒)です。
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: application/json
Transfer-Encoding: chunked
Date: Mon, 14 May 2012 17:36:41 GMT
{
"id" : "ANONYMOUS",
"access_token" : "n44aWtuguvJ9bvwDydXR3sDCSMOBb4ApSSD_Ls8",
"expires_in" : 2147483646,
"token_type" : "bearer"
}