10

真的需要一些帮助!

我正在尝试使用新的通知 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;
 }
4

3 回答 3

22

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

我去 Facebook Developers 应用程序中编辑我的应用程序设置,查看底部附近的设置->基本页面。我只检查了“使用 Facebook 登录的网站”。我检查了“Facebook 上的应用程序”,这给了我一个“画布页面”和其他各种设置。填写并保存这些内容后,对 uid/通知的 POST 立即生效。

顺便说一句,转到apps.facebook.com/myappnamehere 失败,因为它重定向到https 并且对我的站点的请求失败,因为我的SSL 设置不正确,但这并没有阻止在该应用程序凭据下发送通知。

于 2012-11-07T04:58:24.317 回答
2

最近,我遇到了同样的问题,我发现 Facebook Web Games的正式名称为 Facebook Canvas。

因此,只需在 Settings->Basic 页面下创建一个 Facebook 游戏配置(您将在此页面底部看到添加按钮),您的 API 将开始发送通知。

于 2017-10-06T07:26:16.503 回答
0

1:\ 访问developer.facebook.com

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

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

4:\ 选择Facebook 画布

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

而已

于 2016-08-27T16:04:17.980 回答