ワシはワシが育てる

週刊少年ジャンプと任天堂のゲームが三度のメシより好きです。

facebookで作成したテストユーザーが持つアクセストークンの有効期限を伸ばす

facebookアプリと連携したウェブサイト、モバイルアプリを作る場合、開発環境下においてはテストユーザーを作成して検証する必要性が出てきます。

テストユーザーの作成方法については触れませんが、今回はそのテストユーザーが持つアクセストークンの有効期限を伸ばす方法についてです。

アプリが所有するテストユーザーの一覧は

https://graph.facebook.com/[アプリのID]/accounts/test-users?access_token=[アプリのアクセストークン]

にアクセスすることで取得できます。デフォルトでは1ページあたり50人しか取得できないので、URLパラメーターに「limit=500」とでもつけると一度に大量に取得できます。

ところが、ここで表示されるアクセストークンの有効期限は1時間しかないので、これらのユーザーに何らかの処理を施そうと思ってもすぐに期限が切れてしまい、何かと不便です。

そこでトークンの期限を伸ばすために

https://graph.facebook.com/oauth/access_token?client_id=[アプリのID]&client_secret=[アプリのシークレットキー]&grant_type=fb_exchange_token&fb_exchange_token=[上記で取得した短い有効期限のトークン]

にアクセスすることで最長の60日のトークンを取得することができます。

【ユーザー作成→一覧取得→トークン取得】の一連の流れはURLにアクセスするだけで行うことができるので、プログラミングで一括処理できて便利です。