1

我正在使用新版本 2,sdk 4.0 php。我正在尝试使用我的应用向用户发送通知。我刚刚意识到我通过登录获得的访问令牌(用户访问令牌)与我的应用程序的访问令牌不同。在将其发布在这里之前,我已经在线搜索过,但大多数是针对旧的 sdk 并且无法获得正确的语法来使用我的。

我的代码:

$notification = (new FacebookRequest(
$session,
'POST',
'/'.$id[0].'/notifications',
array (
    'href' => "http://localhost/app/index.php",
    'template' => 'You have been tagged, please set privacy preference',
 )

))->execute()->getGraphObject()->asArray();

我的错误:

致命错误:未捕获的异常“Facebook\FacebookAuthorizationException”带有消息“(#15)必须使用应用程序访问令牌调用此方法。” 在 C:\xampp\htdocs\app\Facebook\FacebookRequestException.php:134 堆栈跟踪:#0 C:\xampp\htdocs\app\Facebook\FacebookRequest.php(268): Facebook\FacebookRequestException::create('{"错误“:{“混乱...',对象(stdClass),400)#1 C:\ xampp \ htdocs \ app \privacy.php(121):Facebook \ FacebookRequest->execute()#2 {main}抛出在 C:\xampp\htdocs\app\Facebook\FacebookRequestException.php 第 134 行

有人可以帮我获取应用访问令牌吗?

4

1 回答 1

2

您可以按如下方式获取应用程序 access_token:

$appSession = FacebookSession::newAppSession();

然后你可以这样做:

$notification = (new FacebookRequest(
$appSession,
'POST',
'/'.$id[0].'/notifications',
array (
    'href' => "http://localhost/app/index.php",
    'template' => 'You have been tagged, please set privacy preference',
 )

))->execute()->getGraphObject()->asArray();
于 2014-08-08T09:37:08.267 回答