読者です 読者をやめる 読者になる 読者になる

@半径とことこ60分

人間の認知範囲なんてそんなもんさと、鳥が囀った

Facebook API を利用するには、すべてにアクセストークンが必須になったようです。アクセストークン取得

ひと月ほど前に、Facebook の Graph API を使って、ウェブに Facebook の写真を表示するようにしたのですが、2,3日前に見てみましたら表示されなくなっていました。(下のリンクはすでに修正されて表示されます)

作った時点では、Facebook の写真を外部から取り出す場合、

https://graph.facebook.com/ユーザ名 or ID/photos

で取り出せていたのですが、

{
"error": {
"message": "An access token is required to request this resource.",
"type": "OAuthException",
"code": 104
}
}

と、エラーが出るようになっています。

すばり、「このリクエストにはアクセストークがいるよ」と怒られているわけですが、このアクセストークンというのがとても分かりにくく、その時点でも、まあなくても取り出せるのならいいかと簡単に済ませておいた経緯があります。

で、あらためて、アクセストークン取得に挑戦です。

Facebook アクセストークン取得

ググればいろいろ出てくるのですが、なぜか、どれもこれも古い情報ばかりですし、ややこしそうなので一瞬怯みますが、やってみたら簡単でした。多分これで問題ないと思いますが、間違っていましたらお知らせください。

  1. ログインして Facebook Developers を開くf:id:ausnichts:20150630132451p:plain
  2. 上メニューMy Apps → Add a New App → ウェブサイト → 適当なアプリ名を入れる
  3. 「Is this a test version of another app?」は「いいえ」のまま、カテゴリを選択して「Create App ID」
  4. 次に出る「Setup the Facebook SDK for JavaScript」の下の「Tell us about your website」に連携させる URL を入れるのですが、ローカルからのアクセスでどうなるでしょう。とりあえずサイトアドレスを入れて進みます。
  5. 必要なら、スクリプトと Like button のコードをコピーしておきましょう。
  6. 右上の「Skip Quick Start」→ アプリのダッシュボード

    f:id:ausnichts:20150630133013p:plain

  7. 左メニューの Settings → App Domains 入力、Contact Email 入力
  8. 左メニューの Status&Review → アプリ名の右の YES,NO ボタンの YES → 「Make App Public?」に「確認」→ アプリ名の横の○がグリーンに変化
  9. 上メニューの Tools&Support → Access Token Tool

    f:id:ausnichts:20150630133252p:plain

  10. 該当アプリのUser Token  「You need to grant permissions to your app to get an access token」をクリック → User Token 作成 → アクセストークン取得
  11. ただし、これは1時間しか有効ではないので右の「Debug」クリック

    f:id:ausnichts:20150630133434p:plain

  12. 下の「Extend Access Token」ボタンをクリック → 2ヶ月間有効のアクセストークン取得


ということで、取得出来たアクセストークンを後ろにつけてアクセスすればアルバムや写真が取り出せます。

https://graph.facebook.com/v2.3/'.$fbid.'/albums?access_token='.$access_token;

どうやら、Likebox も Page Plugin というものに変わっているようです。

Likebox は2015/6/23で終了

とあります。

 なんだか、Facebook って面倒くさいですね。