Сначала я создаю ключ и секретный ключ API с разрешением read_write.(Либо вручную из пользовательского интерфейса, либо программно с помощью API)
Затем я использую consumer_key
и consumer_secret
в качестве параметров запроса для использования API: например, создайте webhook.Итак, я сделал:
curl -X POST \
'http://wp.mee/wordpress496/wp-json/wc/v3/webhooks?consumer_key=ck_7cc776be8d22b6841b0d62a96a50e975e7523343&consumer_secret=cs_7b788da4bf6063f8dff4b0463c1e9693fdee7a5b' \
-H 'Content-Type: application/json' \
-d '{"name":"ProWebSms","topic":"order.created","delivery_url":"https://dev.smshare.fr/api/v2/woo/webhooks/all/7235173095214b608914159bea2360eb"}'
Я получаю следующее сообщение:
{"code":"woocommerce_rest_cannot_create","message":"Sorry, you are not allowed to create resources.","data":{"status":401}}
Использование основного механизма аутентификации также не удается.Я создал test.php только для того, чтобы убедиться, что заголовок авторизации не удален сервером, и я могу подтвердить, что заголовок есть.
<?php var_dump(apache_request_headers()); ?>
//i can see:
'Authorization'
'Basic Y2tfN2NjNzc2YmU4ZDIyYjY4NDFiMGQ2MmE5NmE1MGU5NzVlNzUyMzM0Mzpjc183Yjc4OGRhNGJmNjA2M2Y4ZGZmNGIwNDYzYzFlOTY5M2ZkZWU3YTVi'
Пробовал на обоих:
- версия woocommerce 3.3.5
- версия wordpress: 4.9.6
И:
- версия woocommerce 3.5.4
- WordPress версия: 5.0.3
РЕДАКТИРОВАТЬ
Я заметил, что если я заменю consumer_key
и consumer_secret
на имя пользователя / пароль администратора (например, admin: admin) вызов успешен.
Вызывается wp_authenticate_username_password
..