1

特別な権限のないアプリを作成しました。このアプリでは、Facebook イベントをクエリして、自分の Web サイトに表示します。それはすべてうまくいきます。

ファンページの Facebook ノートを表示して、ウェブサイトを拡張したいと思いました。それを実装しようとすると、次のエラー メッセージが表示されます。

「ユーザーセッションが必要です」

FQL-Note API リファレンスでは、「ページによって書かれた公開メモである場合、有効な access_token」と記載されています。私は有効な公開トークンを持っていると思います。

require '../src/fb-sdk/src/facebook.php';

$facebooknotes = new Facebook(array(
    'appId'  => 'xxxxxxxxxxxxxxx',
    'secret' => 'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy',
    'cookie' => false, // enable optional cookie support
));

$fql_notes = "SELECT uid, note_id, title, content, content_html, created_time, updated_time FROM note WHERE uid = 149018831796518";

$param  =   array(
'method'    => 'fql.query',
'query'     => $fql_notes,
'callback'  => ''
);

$fql_notesResult   =   $facebooknotes->api($param);

foreach($fql_notesResult as $keys => $fbnotevalues){ echo "<h2>" . $fbnotevalues['title'] . "</h2>" . $fbnotevalues['content_html']; }

誰か助けてくれませんか?

よろしく、

リムショット

4

1 に答える 1

0

FQL はページのメモを取得できないようです。フィールドはuidユーザー ID を探しています。私の推測では、適切なアクセス トークンを取得した場合でも、ID がページに属していないため、エラーが発生します。

ページのメモを取得するには、グラフ API を使用する必要があります。

$fql_notesResult   =   $facebooknotes->api('/149018831796518/notes', 'GET');
foreach($fql_notesResult as $keys => $fbnotevalues){ 
  echo "<h2>" . $fbnotevalues['subject'] . "</h2>" . $fbnotevalues['message']; 
}
于 2012-10-29T18:07:48.870 に答える