毎日のステータスをページ ウォールに投稿するアプリケーションがあります。ステータスはアプリケーションとして投稿されます ( http://facebook.com/fragrantheartを参照)。私のアプリは「Fragrant Heart Daily Meditations」で、ご覧のとおり、何年も前からとても楽しく投稿しています。ただし、投稿すると、次のエラーが表示されます。
[message] => An unknown error has occurred.
[type] => OAuthException
[code] => 1
これがサーバー(PHP API)で実行される私のコードです:
$facebook = new Facebook(array('appId'=>'148279321865482', 'secret'=>'XXXXXX', 'cookie'=>false));
$target_id = '124924677541618'; // Fragrant Heart Meditation Page
$facebook->api("/{$target_id}/feed", 'POST', array('message'=>$msg));
私が読んだことから、ページがアプリに publish_stream 権限を付与しているため、access_token は必要ありません。
このエラーの原因となる最近の変更は何ですか? コードは変更されていません。
また、アクセス トークンを取得するためにサーバー側の認証フローを試しました。そのトークンをデバッガーで実行すると、次のようになります。
App ID: 148279321865482 : Fragrant Heart Daily Meditations
User ID: 100001170589484 : Elisabeth Blaikie
Issued: 1289470487 (over a year ago)
Expires: Never
Valid: True
Origin: Web
Scopes: create_note manage_pages offline_access photo_upload publish_actions publish_stream share_item status_update video_upload
ただし、次のようなアクセス トークンを使用する場合: (明らかに、YYYYYY は実際のトークンに置き換えられます):
$facebook = new Facebook(array('appId'=>'148279321865482', 'secret'=>'XXXXXX', 'cookie'=>false));
$target_id = '124924677541618'; // Fragrant Heart Meditation Page
$facebook->api("/{$target_id}/feed", 'POST', array('message'=>$msg, 'access_token'=>'YYYYYYY'));
エラーが発生します:
[message] => Invalid OAuth access token.
[type] => OAuthException
[code] => 190
ご協力いただきありがとうございます。