Ключ, сгенерированный с помощью md5: ключ работает в песочнице PHP, тот же код получает ошибку аутентификации из Wordpress - PullRequest
0 голосов
/ 11 апреля 2019

Ключ API, сгенерированный с использованием md5, прекрасно работает вне WordPress. При использовании точно такого же кода в WordPress ключ вызывает ошибку «не авторизовано».

Я взаимодействую с API, который требует генерации ключа, как показано ниже. Для тестирования я использовал почтальон и песочницу php: http://sandbox.onlinephpfunctions.com/

$key       = '12345';
$timestamp = gmdate('U');
$signature = md5( $key . '6789' . $timestamp );
$url       = "https://my-api.com/v1&signature={$signature}&key={$key}";
echo $url;

В песочнице PHP, если я выведу $ url и поместу его в свой браузер, я получу успешное возвращение с объектом. Если я получаю тот же $ url из моей сборки WordPress и вставляю его в браузер, я получаю следующее сообщение: {"status": "fail", "data": "not authorised"}

Я сравнил каждый символ в URL, сгенерированных из обоих источников. Единственная разница - это подпись $. Сигнатура, сгенерированная вне WordPress, отлично работает, а подпись из WordPress не работает. Каждый URL представляет собой строку из 32 символов, как и ожидалось.

Я исследовал, генерирует ли Wordpress хеши md5 по-другому, но не нашел много информации. Надеясь на некоторую ясность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...