Получение «неверного JSON, отправленного в уведомлении Webhook» Authorize.net

Мой Authorize.net webhook настроен правильно на стороне A.net, и когда я запускаю событие, чтобы получить уведомление, я получаю это в журнале ошибок:

Неустранимая ошибка PHP: необработанное исключение
«JohnConde \ Authnet \ AuthnetInvalidJsonException» с сообщением «Неверно»
JSON отправил уведомление Webhook в /…/AuthnetWebhook.php:67
Трассировки стека:
0 /…/webhook.php(23): JohnConde \ Authnet \ AuthnetWebhook -> __ construct (‘xxxxxxxxxxx …’, »,
Array)
1 {main} добавлено в /…/AuthnetWebhook.php в строке 67

Я могу успешно настроить webhook и получить историю уведомлений через библиотеку на Github. Вот код, который я использую в качестве моей конечной точки. Оба параметра allow_url_fopen и allow_url_include включены на моем сервере.

<?php

namespace myapplication;

use JohnConde\Authnet\AuthnetWebhook;

require('.../config.inc.php');

require('.../autoload.php');

$headers = getallheaders();
$payload = file_get_contents("php://input");
$webhook = new AuthnetWebhook(AUTHNET_SIGNATURE, $payload, $headers);
if ($webhook->isValid()) {

$transactionId = $webhook->payload->id;

$fp = fopen('results.json', 'w');
fwrite($fp, json_encode($webhook));
fclose($fp);


// Access notifcation values
// echo $webhook->eventType;
}



?>

Спасибо за любую помощь!

0

Решение

Ваша полезная нагрузка — пустая строка. Вы можете увидеть это в ошибке.

AuthnetWebhook->__construct('xxxxxxxxxxx...', '', Array)

Так

new AuthnetWebhook(AUTHNET_SIGNATURE, $payload, $headers);

Я не знаком с AuthnetWebhook но я бы поспорил (если бы я был игроком), что переменная полезной нагрузки не должна быть пустой.

1

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

Решаемые. URL-адрес конечной точки был неверным. У меня был mysite.com/webhook.php и мне нужно www.mysite.com/webhook.php.

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector