【问题标题】:Facebook FB.api Notication stopped workingFacebook FB.api 通知停止工作
【发布时间】:2015-12-23 02:37:22
【问题描述】:
FB.api(/userid/notifications,'post',{access_token:{appid}|{appsecret},template:"our text"},function (response){console.log(response);});

以上是我们用来向在我们的应用中注册的用户发送通知的方式。响应是成功的,但用户仍然没有收到通知。我创建了一个演示应用程序并尝试了上面返回成功 true 的代码,它确实发送了通知,可能是什么问题。

我做错了什么?当我检查一两天后,代码正在运行,但没有任何改变。

【问题讨论】:

  • 您在客户端上使用该代码吗?因为这将是一个重大的安全问题,应用程序的秘密会公开......
  • @luschn 是的,我知道了,一旦通知开始起作用,我会更改它。目前我的应用程序的通知未显示在 facebook 中。

标签: android facebook facebook-graph-api web


【解决方案1】:

我刚刚用 JS 给你写了代码。

  FB.api('/userid/notifications', 'post', {
access_token: '42424242424242|42abc42abc42abc42abc42abc42abc',
template: 'David Augustus wrote a code for you !'}, function(response) {
    alert(response);
  });

这很好,因为无论如何我都需要在几周内完成。

我刚刚测试了它,使用带有游戏类别的应用程序和使用其他类别的应用程序。

这两种方式都有效:)

但是,再次强调,如果您希望所有用户都收到垃圾邮件通知,则必须在您的应用主页上传递此代码,这样会更快。

请仅在阅读后使用此代码 Best pratices from Facebook 至少 3 次。

在 Facebook 最佳实践中:“向每个人发送一到两个通知”..

将“月”改为“日”。

如果有人问,帮助你的不是我:P

【讨论】:

  • 您也可以尝试使用其他参数,例如 href、ref 和 type 。
  • 所以问题不在代码上,我使用 Facebook JS 控制台对其进行了测试,我建议您也使用 Facebook JS 控制台进行测试,并使用我在图形浏览器上生成的应用访问令牌。不是你提到的APP ID和(永远)秘密..
  • 您也可以尝试使用其他应用程序,以确保它不会因为垃圾邮件而被平台禁用。不需要使用游戏。你的应用在 Facebook Canvas 上吗?您是在桌面上查看通知还是仅在移动设备上查看通知?我认为它仅将用户重定向到画布,因此如果您在移动应用程序下,则无需显示通知..
  • 我的测试应用不是画布应用。
  • 哦,当然。我之前考虑过,但是由于我还没有为移动设备编写代码,所以我不确定.. 在考虑其他可能性(概念)之前测试代码。请凭良心使用。
【解决方案2】:

几天前我注意到了同样的问题,但我使用的是 PHP 和一个 ID 数组。

我尝试了所有方法来修复它,看起来非常困难,现在我确定他们已经改变了一些东西。

我可以发送一些通知,使用另一个呼叫,没有 id 数组,一旦我认为某些 id 可以卸载应用程序..我可以发送一些通知。

它仍然有效,但我认为您可能需要在生产之前更改(更新)代码中的某些内容。

问题是我不知道为什么会这样,一旦我的代码是 PHP 并且问题是一个 id 数组,但是相同的 id 可以工作,有更多请求,而不是批量请求......一,二,在同一个调用中的三个 id,工作正常。

我不太记得了。我很累,测试了好几个小时,正如我所说,我的代码与你的非常不同。

您是否尝试在调用时指定 API 版本? 并在这种调用的所有参数上使用“”或“”。 类似的东西:

FB.api( "/v2.1/id/notifications", "POST" {});

我只使用过几次这种通知,上次我完全使用它,传递一个 ID,所以当用户点击时,应用程序会获取 ID(或任何你想要传递的),例如,GET现在免费硬币............

我这次打算换个方式使用,通知用户有另一张图片可以设置为头像,并链接到手机界面,方便用户在应用体验后设置头像.这就是我想知道的。

我认为..这种通知是一种...奇怪的东西.. 但如果使用得当,可以很好地重新吸引用户。 反正..

Facebook 总是因为必要的原因而改变一些事情。

【讨论】:

  • 感谢大卫。我尝试更改版本,但没有任何成果。 Facebook 肯定会改变一些我不知道是什么的东西。 Javascript SDK 使用connect.facebook.net/en_US/sdk.js。所以我猜不会有更新的要求。这是否与权限有关。几天前通知工作正常。
  • 没错,几天前使用 PHP sdk 也可以工作,这是其中最“奇怪的部分”。我不考虑权限,因为我使用的是 APP 访问令牌,它可以使用它。但是用户必须登录。我只是注意到你传递了“appsecret”,你不认为这是一个可以让 Facebook 改变一些东西的安全问题吗?我不知道你在哪里使用它,但是如果用户可以访问它,即使使用应用访问令牌我也不会这样做。
  • 太好了,我能看到它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-03-27
  • 1970-01-01
  • 2018-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-21
相关资源
最近更新 更多