Facebook Messenger API:设置webhook时遇到问题

Sha*_*ane 16 javascript php facebook webhooks facebook-messenger

我正在尝试在我的PHP网络服务器上为新的Facebook Messenger bot平台设置一个Web挂钩,并且收到此错误:

无法验证URL.响应与挑战不匹配,预期值='364011207',已收到='

资源

https://developers.facebook.com/docs/messenger-platform/quickstart

https://developers.facebook.com/docs/messenger-platform/webhook-reference#common_format

任何帮助是极大的赞赏.

Sha*_*ane 24

我遇到了一个问题.我废弃了我的js尝试并使用以下代码创建了一个新的php文件:

<?php

$challenge = $_REQUEST['hub_challenge'];
$verify_token = $_REQUEST['hub_verify_token'];

if ($verify_token === 'my_token_code') {
echo $challenge;
}
Run Code Online (Sandbox Code Playgroud)

我从这个视频的前10分钟得到了这段代码:https: //www.facebook.com/marketingdevelopers/videos/883648801749520/


Jam*_*son 6

该代码是node.js代码,应该在服务器上运行,而不是在<script>HTML 中的标记中运行.

以下是使用node.js设置messenger bot的简单步骤:https: //github.com/voronianski/simon-le-bottle

基本上,您需要确保拥有支持node.js应用程序的主机并按原样运行它.它不适用于HTML内部.


che*_*zeh 5

如果您将此作为Node.js应用程序运行,并且您来自问题中提到的Facebook 快速入门指南,则必须将 webhook URL 指向[your-server-root]/webhook请注意本教程的这一部分:

// Adds support for GET requests to our webhook
app.get('/webhook', (req, res) => {
    ...
    // Responds with the challenge token from the request
    res.status(200).send(challenge);
});
Run Code Online (Sandbox Code Playgroud)