Я пытаюсь использовать симулятор webhook, чтобы быть уверенным, что информация хотя бы попадает на наш сервер, прежде чем двигаться вперед. Хорошей новостью является то, что в моем журнале я вижу, что запрос сделал что-то, но проблема в том, что все переменные пустые. Я использую php, и $ _GET, $ _POST и $ _REQUEST — все пустые массивы согласно моим распечаткам. У кого-нибудь есть какие-либо советы о том, как решить эту конкретную проблему?
Ниже приведен единственный код на нашем сервере (опять же, просто хочу посмотреть, сделали ли это данные).
<?php
function write_to_log($text) {
try {
$file = fopen("../../../paypal_test_log.txt", "a");
$text = date("m/d/Y H:i:s") . " -- " . $text . "\n";
fwrite($file, $text);
fclose($file);
} catch(Exception $e) {
echo 'error<br/>';
echo $e->getMessage();
}
}
header('HTTP/1.1 200 OK');
write_to_log('===============================================testing post');
write_to_log(print_r($_POST, true));
write_to_log('===============================================get');
write_to_log(print_r($_GET, true));
write_to_log('===============================================request');
write_to_log(print_r($_REQUEST, true));
?>
Журнал сервера после события:
07/14/2016 15:07:22 --
===============================================testing post 07/14/2016 15:07:22 -- Array ( )
07/14/2016 15:07:22 --
===============================================get 07/14/2016 15:07:22 -- Array ( )
07/14/2016 15:07:22 --
===============================================request 07/14/2016 15:07:22 -- Array ( )
Чтобы получить тело запроса, вы должны использовать ‘php: // input’, пример file_get_contents (‘php: // input’);
Чтобы проверить полномочия запроса, вы должны проверить глобальный массив $ _SERVER
Других решений пока нет …