我正在使用Facebook C# SDK发布和获取数据。这些简单的任务需要永远正常运行。现在我需要通知我的网页(ASP.NET C#)有关特定Facebook页面上的更改,以便网页知道它应该获取新数据。
我看过这个页面:https://developers.facebook.com/docs/graph-api/real-time-updates/v2.2
但是,与Facebook文档一样,它错过了详细解释它是如何工作以及如何使其工作的原因。我在哪里创建订阅?它说/ {app-id} / subscriptions但是我已经尝试使用我的app-id这个网址,但是找不到网页?
我试图找到关于如何设置但没有成功的例子。
有人可以解释一下这是如何运作的吗?我需要做些什么来实现这一目标?
答案 0 :(得分:1)
Facebook订阅的工作方式是每次数据更改时ping您拥有的URL。您需要添加您拥有的URL作为Facebook订阅的回调URL以使用
POST /v2.2/{app-id}/subscriptions HTTP/1.1
Host: graph.facebook.com
object=page
callback_url=http%3A%2F%2Fexample.com%2Fcallback%2F
fields=feed
verify_token=thisisaverifystring
在上面的API请求中,发出POST请求以添加http://example.com/callback/
作为订阅页面对象的源边缘的回调URL(会话用户拥有的页面对象)
在你的回调网址中,你必须让它处理两个动作
以下是PHP中的示例
<?php
if ($_REQUEST['hub_verify_token'] === 'thisisaverifystring') {
echo $_REQUEST['hub_challenge'];
}
$file = 'sample.txt';
$inputJSON = json_decode(file_get_contents('php://input'));
file_put_contents($file, file_get_contents('php://input') );
?>