я следовал шаг за шагом wc_api_docs для аутентификации через http с одноногим oauth1.0a, но подпись моего кода в php или java отличается от подписи почтальона, и я сталкиваюсь с этой ошибкой:
{«code»: «woocommerce_rest_authentication_error»,
«сообщение»:
«Недопустимая подпись — при условии, что подпись не совпадает»,
«данные»: {
«status»: 401}}
$url = rawurlencode("http://localhost/wordpress/wordpress/wp-json/wc/v1/products");
$ck = rawurlencode("oauth_consumer_key").'='.rawurlencode("ck_s6ec05447691a63c76b3ffc575f2f29ba7c0438c");
$nonce = rawurlencode("oauth_nonce").'='.rawurlencode("zNebTNK");
$timestamp = rawurlencode("oauth_timestamp").'='.rawurlencode("1468302526");
$s_method = rawurlencode("oauth_signature_method").'='.rawurlencode("HMAC-SHA256");$params = rawurlencode($ck."&".$nonce."&".$s_method."&".$timestamp);
$http_method = "GET";
$signature_base = $http_method."&".$url."&".$params;
echo $signature_base.'-------------';
$s = hash_hmac('sha256', $signature_base, 'cs_s70ac550670bdf16e72213855c9745518320e68c', true);
echo urlencode(base64_encode($s));
и я не могу произвести правильную подпись, но мой почтальон с этими значениями работает правильно!
Задача ещё не решена.
Других решений пока нет …