Edited at

Facebook の Graph API で user token を取得する

More than 1 year has passed since last update.

次のページを参考にしました。

[Facebook Graph API]無期限のアクセストークンの取得方法

app_id, app_secret, redirect_uri が必要です。

redirect_uri は、

https://developers.facebook.com で、アプリを表示して確認が出来ます。

設定 -> ベーシック -> アプリドメイン

token_feb2001.png

もし、まだ設定していなかったら、まず、

設定 -> ベーシック -> ウェブサイト -> サイトURL

に、入力すれば、アプリドメインに入力が出来ます。

token_feb2002.png

1) ブラウザーで次のURI にアクセスします。

   client_id と、redirect_uri は変更して下さい。

https://www.facebook.com/dialog/oauth?client_id=359403267812345&redirect_uri=htt

ps://ekzemplaro.org

ブラウザーのアドレスバーに code が表示されます。

token_feb2003.png

2)次のようなスクリプトを実行して、user_token を得ます


get_user_token.sh

#

# get_user_token.sh
#
# for ekzemplaro
#
# Feb/20/2018
#
APP_ID="359403267812345"
APP_SECRET="ad181a19b1bd9cce695e4b4970******"
REDIRECT_URI="https://ekzemplaro.org/"
URI="https://graph.facebook.com/oauth/access_token"
#
CODE="A12345678912456011MlPXU8bz2BNBrt3Kb4FYQzPmje9umlP9QCT1rvYl3jrnEkzqN7cXhBucURpYllwxRkvjrXq4MOFRTGxAzeUCptiTn9dQXkE37nBoFklJzRQ0oESB4mLZLTFZyRQvpHeunbCrZMf54ICivFb0dLOpturRncnUdx5xKZXkcuNEZEl-20ZhcxADXvZV_5_XEV0nAx4jA3IJDZuArA1q0CU7uYqoRzxosk6vTQXpkppThPEhHNzznBo_nhUAEzKwd5-BwWQlmfgT1IB5olo5_E4v6_uPG-GGddKruxLY4giDdngyHJ123679412XRWCqECvHZVQC8i#_=_"
#
#
curl "$URI?client_id=$APP_ID&redirect_uri=$REDIRECT_URI&client_secret=$APP_SECRET&code=$CODE"
#

時間が経ってから、実行すると、

{"error":{"message":"This authorization code has expired.","type":"OAuthException","code":100,"fbtrace_id":"FseyfgwFvTk"}}

そうしたら、また code を取るところからやり直しです。

うまく行けば、次のような json が返ってきます。

{

"access_token": "**************************************************",
"token_type": "bearer",
"expires_in": 5176832
}