首先,我创建一个API用户密钥和密码与READ_WRITE许可。 (手动从UI或编程方式使用API)
然后,我使用consumer_key
和consumer_secret
作为查询参数消耗API:创建例如一个网络挂接。所以我做了:
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'
试了两个:
和:
编辑
我注意到,如果我被管理员用户的用户名/密码替换consumer_key
和consumer_secret
(例如:管理员:管理员)调用成功。
该wp_authenticate_username_password
被称为..
我发现这个问题。您必须使用HTTPS。在当地环境艰苦本作测试。