0

我有一个 node.js 代码,我在 cloud9 上运行以进行开发,我想将我的“测试”Facebook 页面信使订阅到该链接,以便将其用于测试\沙盒。

但是当我尝试将 webhook 订阅到我的应用程序正在运行的 Cloud9 链接时,我得到了这个:

在此处输入图像描述

我使用的链接是:https: //node-.c9users.io 端口是 8080

如果我在应用程序运行时直接从浏览器导航到该链接 - 我确实会收到响应。为什么FB订阅无法通过?

4

2 回答 2

0

默认情况下,您需要在 C9 上登录才能看到发布的 URL,因此当 Facebook 尝试注册时,它会收到“登录到 C9 页面”而不是您的应用程序 URL。

要解决此问题,您需要共享运行 webhook 的工作区并将其公开。

转到“窗口->共享”并单击您的应用程序的“公共”复选框。

共享您的工作区 共享您的应用程序 URL

于 2016-12-26T13:01:00.483 回答
0

除了@Roberdam 的回答,我还建议您将 GET 路线设置为如下:

app.get('/', function (req, res) {
console.log(req);
if (req.query['hub.verify_token'] === 'verifycode') {
res.send(req.query['hub.challenge']);
}
res.send('Error, wrong validation token!');
});

其中hub.challenge是您的 webhook 返回的随机生成的值。

于 2017-04-25T11:03:31.323 回答