【发布时间】:2018-01-21 14:21:44
【问题描述】:
我按照指南从here 构建了一个 facebook Messenger 机器人
但在我的软件中,我总是收到一个空响应。
这是我的机器人代码:
define('PAGE_TOKEN',"xxx");
define('VERIFY_TOKEN',"xxx");
if(isset($_GET['hub_mode']) && isset($_GET['hub_challenge']) && isset($_GET['hub_verify_token'])) {
if($_GET['hub_verify_token']==VERIFY_TOKEN && $_GET['hub_mode']=='subscribe') {
echo $_GET['hub_challenge'];
}
}
$input = json_decode(file_get_contents('php://input'), true);
// Get the Senders Graph ID
$sender = $input['entry'][0]['messaging'][0]['sender']['id'];
// Get the returned message
$message = $input['entry'][0]['messaging'][0]['message']['text'];
error_log($input);
error_log($sender);
error_log($message);
验证阶段很好,但是当我在 error_log 文件中向我的机器人发送消息时,我发现只有空值:
[Sun Aug 13 17:35:49.617919 2017] [:error] [pid 22501] [client 173.252.124.11:18834]
[Sun Aug 13 17:35:49.617951 2017] [:error] [pid 22501] [client 173.252.124.11:18834]
[Sun Aug 13 17:35:49.617972 2017] [:error] [pid 22501] [client 173.252.124.11:18834]
这里还有我的access_log:
173.252.124.30 - - [13/Aug/2017:17:35:48 +0200] "POST /webhook HTTP/1.1" 301 3621 "-" "-"
173.252.124.11 - - [13/Aug/2017:17:35:49 +0200] "GET /webhook/ HTTP/1.1" 200 328 "-" "-"
那么为什么 $input 变量总是空的?
【问题讨论】:
标签: php facebook facebook-messenger facebook-messenger-bot