В настоящее время я успешно настроил тему и подписку на облачной платформе Google, проверил свой сайт с помощью Google и добавил домен в GCP.
Всякий раз, когда я пытаюсь отправить тестовое сообщение от https://console.cloud.google.com/cloudpubsub/topics/subscription_sync, конечная точка, которую я настроил, получает что-то, но переменная POST пуста. Вот код, который у меня есть до сих пор в php, он просто записывает в журнал переменную POST (которая позже отображается в моих журналах как пустая).
require_once 'EventPersister.class.php';
$eventPersister = new EventPersister(EventPersister::GOOGLE_WEBHOOKS);
$eventPersister->Persist($_POST);
Что-нибудь особенное, что мне нужно сделать, чтобы данные POST отображались правильно?
Для всех, у кого есть проблемы с этим, это потому, что данные POST отправляются в формате json. Поэтому вместо того, чтобы смотреть на $ _POST, вы должны сделать
json_decode(file_get_contents('php://input'));
….и это должно работать. Кроме того, вы можете сделать
json_decode($HTTP_RAW_POST_DATA);
чтобы получить данные.
Других решений пока нет …