【发布时间】:2016-04-20 19:49:45
【问题描述】:
我正在尝试让 FB Messenger Bot API 工作。我目前正在尝试订阅 webhook。我目前有以下形式的脚本:
#!/usr/bin/php
<?php
$challenge = $_REQUEST['hub_challenge'];
echo $challenge; # HERE!
$verify_token = $_REQUEST['hub_verify_token'];
if ($verify_token === 'token') {
echo $challenge;
}
?>
但是,当我尝试“验证并保存”回调 URL 时,我收到以下表单错误:
The URL couldn't be validated. Response does not match challenge, expected value = '401537941', received=''
即我的脚本正在发送一个空字符串。但是,如果我更改标记为“这里!”的行上面到“echo 'cat'”,错误消息与预期的“received='cat'”相同。因此,我的脚本正在执行并试图将一些内容发送回 FB,但由于某种原因 $challenge 变量为空。为什么会这样?
谢谢!
【问题讨论】:
-
在设置 webhook 时,是否将“验证令牌”设置为令牌?如果是,请尝试在此处取出 #!完全行。
-
是的,我添加了#HERE!事后一行只是为了看看 $challenge 是否返回任何东西。它现在实际上不在我的代码中。
标签: php facebook facebook-sdk-4.0 facebook-messenger chatbot