アプリが認証されている場合にのみ取得できる Facebook のユーザーに関するデータ (/likes など) を取得しようとしています。
ただし、ユーザーが Facebook アプリ (および該当する特定のアクセス許可) を認証しているにもかかわらず、このデータを取得できないようです。パブリック コンテキストからのみデータを取得できます。
ある種の認証ステップが欠落しているに違いないと思いますが、その方法がわかりません。を呼び出すと$fb->getAccessToken()
、文字列値が返されるので、リクエストを行うためのアクセス トークンを取得するようです。ユーザーが認証のためにログイン URL をクリックするように強制する解決策がいくつかありますが、以前に (Javascript を介して) FB ダイアログを認証した場合、それは既に行われていませんか? それに加えて、ユーザーからの入力なしでスクリプトを実行する必要があります。
現在のコード:
$fbConfig = array(
'appId' => 'xx',
'secret' => 'xx',
);
//get facebook configuration parameters defined in admin backend
$fb = new facebook($fbConfig);
$access_token = $fb->getAccessToken();
$fbUid = '123456789'; // Known Facebook User Id
$likes = $fb->api('/' . $fbUid . '/likes&access_token=' . $access_token);
var_dump($likes);
// Result is always: array(0) { }