2

我创建了一个 Facebook 应用程序。然后转到高级设置并添加了一个应用程序页面。然后继续创建了一个 webhook。它是成功的。我选择了页面并订阅了提要。直到这里一切都很好。但是当我去我的页面并在上面发布一些东西时,注意到发生了。我没有收到对我的服务器的任何请求。

我的 Nodejs 代码是这样的。

router.route('/v1/facebook/')
.get(function (req, res) {
    if (
        req.param('hub.mode') == 'subscribe' &&
        req.param('hub.verify_token') == 'FBToken'
    ) {
        res.send(req.param('hub.challenge'));
    } else {
        res.sendStatus(400);
    }
});

router.route('/v1/facebook/')
.post(function (req, res) {
    console.log('Facebook request body:');
    console.log(JSON.stringify(req.body))
    console.log('Facebook request body end:');
    // Process the Facebook updates here
    res.sendStatus(200);
});

当我点击测试它工作

当我尝试这个时它显示为空

4

1 回答 1

1

您需要确保已使用应用程序生成的页面访问令牌向 me/subscribed_apps 发布,这实际上是为该特定页面设置 webhook 订阅,允许您获取回调。

Facebook 将此称为在页面上“安装”应用程序。以下文档适用于 instagram API,但方法与 facebook API 完全相同。 https://developers.facebook.com/docs/instagram-api/webhooks#install-app

于 2018-04-13T10:37:39.447 回答