Пустое сообщение от бота Facebook Messenger

Я следовал руководству по созданию бота на Facebook Вот

но в моем программном обеспечении я всегда получаю пустой ответ.

вот мой код бота:



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 "-" "-"

так почему $ вход переменная всегда пуста?

1

Решение

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 "-" "-"

Ваш сервер отвечает на запрос POST перенаправлением 301, так что клиент (Facebook) должен выполнить запрос GET следующим образом, и вы больше не видите данных POST.

Видя, что первый URL /webhookи перенаправляется на /webhook/скорее всего, это просто автоматическое перенаправление косой черты, и его следует исправить после того, как вы укажете правильный URL-адрес с косой чертой в настройках приложения для начала.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]