无法使用新API发送FB通知

时间:2012-11-07 04:02:56

标签: facebook notifications

真的需要一些帮助!

我正在尝试使用新通知API从画布应用发送通知,但我一直收到以下异常:

OAuthException:(#200)只有网络画布应用可以发送应用通知

然而,应用程序被加载到Facebook画布中 - 当用户采取触发通知POST请求的特定操作时,我正在对我的服务器进行ajax调用。用户还授权该应用程序。

这是我正在使用的代码:

$graphUrl = $user_id . "/notifications";
$params = array( "access_token" => $admintoken,
             "href" => $link, 
         "template" => "string of text < 180 chars"
        );

try {
  $result = $facebook->_graph($graphUrl, 'POST', $params);
 } catch (Exception $e){
     echo $e;
 }

3 个答案:

答案 0 :(得分:22)

我也碰到了这个,这就是我解决它的方法,但这可能与你无关,因为你似乎确定你的是一个Canvas应用程序。我的应用程序主要在Facebook上运行,但有Facebook集成挂钩,这意味着用户可以授权我的Facebook应用程序,然后通过Facebook框架接收有关有趣事件的更新。

我在Facebook Developers应用中编辑了我的应用设置,查看底部附近的Settings-&gt; Basic页面。我只选中了“Facebook登录网站”。我检查了“Facebook上的应用程序”,这给了我一个“画布页面”和各种其他设置。填写并保存后,POST到uid / notification会立即生效。

顺便说一句,转到apps.facebook.com/myappnamehere会失败,因为它重定向到https并且我的网站请求失败,因为我的SSL设置不正确,但这并不妨碍在该应用凭据下发送通知

答案 1 :(得分:2)

最近,我遇到了同样的问题,我发现 Facebook网络游戏正式名称为Facebook Canvas。

所以,只需在Settings-&gt;基本页面下创建一个Facebook游戏配置(您将看到本页底部的添加按钮),您的API将开始发送通知。

答案 2 :(得分:0)

1:\转到developer.facebook.com

2:\转到您的应用设置 \ 基本

3:\从页面按钮底部的加号添加新平台

4:\选择 Facebook画布

现在您可能需要使用您的网址填写表单

那是