我是WordPress的新手,并且是第一次使用WooCommerce插件,并希望在我的Android应用程序中使用WooCommerce REST API。
我启用了REST API并创建了Consumer Key和Consumer secret。
现在,当我在浏览器中使用此url http://www.my-domain.com/wp-json/wc/v1/products/
检查API是否正常工作时,我收到此错误:
{“code”:“woocommerce_rest_cannot_view”,“message”:“抱歉,您无法列出资源。”,“数据”:{“状态”:401}}
我的服务器上未安装SSL。我怎样才能解决这个问题?我需要使用PHP客户端库吗?
对于“新”v2 API(不是“旧版v2”API):
如果您使用错误的连接使用错误的身份验证,您将收到401响应消息。
这在WooCommerce API文档中有所介绍:https://woocommerce.github.io/woocommerce-rest-api-docs/#authentication-over-https
另请注意,通常您会将CK和CS作为标题字段传递,但根据服务器的配置方式,您可能会发现它不会正确解析标题字段,因此如果包含CK和CS,您可能会获得成功在URL中作为参数:
https://website.tld/wp-json/wc/v1/products?consumer_key=[key]&consumer_secret=[secret]
您正从服务器获得401响应。此响应表示您未获得该REST端点的授权。要使用woocommerce api,您需要在请求中包含您的授权。
这里有一些例子和文档:http://woocommerce.github.io/woocommerce-rest-api-docs/#authentication
woocommerce示例不包含Java示例。 (我假设你正在使用Android应用程序)。但是,有一个第三方java库用于woocommerce。它可以在这里找到:https://github.com/icoderman/wc-api-java
我没有亲自使用该库,但它应该包含授权和正确请求来自woocommerce api的数据所需的所有功能。