【发布时间】:2023-04-02 19:36:01
【问题描述】:
首先,我很抱歉,因为我知道 StackOverflow 上已经有其他与此相关的问题。不幸的是,他们似乎都没有全面的答案,其他人也没有解决我遇到的问题。
我正在尝试在 Facebook 上注册一个页面的实时更新。本质上,当页面管理员发布状态更新或分享某些内容时,我希望收到通知。
图形 API 版本
在开始之前,我想先说明我正在使用 Facebook 的 GRAPH API v2.3。我注意到/app-id/subscriptions GRAPH API edge documentation page 上的一些消息指出“v2.2 中删除了某些功能”。
我没有使用 API v2.2 进行测试,但是如果有人认为它可能相关,我可以测试。我无法想象 Facebook 会删除该功能,但目前我不排除任何可能性。 :)
到目前为止我尝试过的...
我将我的应用设置为具有 标签页 组件,并在应用控制面板中成功填写了所有必需的信息。这是我下一步所必需的,即将应用程序作为选项卡添加到我的页面。
据我了解,我的应用必须是我想要更新的页面上的一个标签,才能接收该页面的更新。 (或者至少,页面需要“安装”应用程序,当应用程序添加为选项卡时会发生这种情况)
我已向/page-id/tabs 发出POST 请求,以便在我的页面上为我的应用创建一个标签。现在,当我向/page-id/tabs 发出GET 请求时,我可以看到我的应用包含在我页面的选项卡列表中:
{
"id": "app_id/tabs/tab_id",
"image_url": "...",
"name": "My Tab Name",
"link": "...",
"application": {
"name": "My App",
"id": "app_id"
},
"is_permanent": false,
"position": 5,
"is_non_connection_landing_tab": false
}
我已向/app-id/subscriptions 发出POST 请求,以便为我的应用同时创建user 和page 订阅。两个订阅都订阅field 参数。当我向/app-id/subscriptions 发出请求时,我得到以下响应:
{
"data": [
{
"object": "user",
"callback_url": "my_callback_url",
"fields": [
"feed"
],
"active": true
},
{
"object": "page",
"callback_url": "my_callback_url",
"fields": [
"feed"
],
"active": true
}
]
}
为了确认一下,当我创建订阅时,我确实收到了对我的回调 URL 的验证请求,并且 - 据我所知 - 成功通过了验证,因为我是在我创建订阅时给出了成功的响应。
最后,我向/page-id/subscribed_apps 发出了GET 请求。我很担心,因为我在此回复中没有看到我的应用:
{
"data": [
{
"name": "Discussion Boards",
"id": "2373072738"
}
]
}
问题
因此,在所有这些之后,当我将帖子作为我的页面时,我确实不会收到来自 Facebook 的任何POST 对我的回调 URL 的请求。
可能需要注意的是,我的一位同事使用几乎相同的步骤从他的个人资料中接收user 更新。我目前无法通过我的个人资料接收user 更新,但我认为这是因为我尚未使用我的 Facebook 个人资料对我的应用程序进行身份验证。
问题/想法/理论
我是否遗漏了一些明显(或不那么明显)需要执行的步骤,以便 Facebook 向我发送通知请求?
我的应用是否需要通过 Facebook 的 Login Review 或类似地址才能接收页面更新?
这只是坏了吗?如果是这样,有什么解决方法吗?
【问题讨论】:
-
不再通过
/page_id/tabs创建页面订阅,而是通过/page_id/subscribed_apps,参见developers.facebook.com/docs/apps/changelog#v2_2_new_features -
哦?有趣的!我会试试看。我之前曾咨询过
/page_id/subscribed_apps文档here,它仍然指出您无法使用该API 边缘创建任何东西,但是您链接到我的更改日志似乎暗示了其他情况。谢谢! -
好的,成功了!随意发布这个作为答案,我很高兴接受它。非常感谢!
-
这可能会让您了解完整的页面订阅流程:tech-brains.blogspot.in/2015/04/…
-
@JesseDunlap 您是否设法将带有图片的帖子发送到您的 webhook?我正在为类似的订阅而苦苦挣扎 (stackoverflow.com/questions/39135845/…)。到目前为止,我收到了来自 facebook 的新帖子,但不是那些有照片的帖子
标签: php facebook facebook-graph-api