RESTful API-REST API请求因curl而失败

RESTful API-REST API请求因curl而失败,api,rest,woocommerce,restful-authentication,Api,Rest,Woocommerce,Restful Authentication,我最近更新了WooCommerce 2.1的最新版本,其中包括一个。 我对cURL或restfulapi没有太多的经验,但我想我可以尝试一下 我的网站是sergedenimes.com,我在服务器上设置了SSL 如果我运行curlhttps://sergedenimes.com/wc-api/v1我得到了一个很长的json输出,如下所示: { "store":{ "name":"Serge DeNimes", "description":"Original, Urb

我最近更新了WooCommerce 2.1的最新版本,其中包括一个。 我对cURL或restfulapi没有太多的经验,但我想我可以尝试一下

我的网站是sergedenimes.com,我在服务器上设置了SSL

如果我运行
curlhttps://sergedenimes.com/wc-api/v1
我得到了一个很长的json输出,如下所示:

{
   "store":{
      "name":"Serge DeNimes",
      "description":"Original, Urban T-Shirts Of The Highest Quality by Oliver Proudlock",
      "URL":"http:\/\/sergedenimes.com",
      "wc_version":"2.1.2",
      "routes":{
         "\/":{
            "supports":[
               "HEAD",
               "GET"
            ],
            "meta":{
               "self":"http:\/\/sergedenimes.com\/wc-api\/v1\/"
            }
         },
         "\/customers":{ etc.....
这表明api本身正在工作。但是,当我传递使用身份验证的请求时:

curl https://sergedenimes.com/wc-api/v1/orders -u my_key:my_secret
我得到的回应是:

{
   "errors":[
      {
         "code":"woocommerce_api_authentication_error",
         "message":"Consumer Key is missing"
      }
   ]
}
我的语法正确吗?我已经在WP admin下设置了我的密钥和机密,并传入了值,但它似乎认为我没有在请求中传递它


有什么想法吗?

确保在WooCommerce->Settings->checkout下启用了安全签出选项。只有启用了基本身份验证选项,它才会使用该选项。

我还编写了这个方便的客户端库,以使与API的交互更容易。是的,我在谷歌搜索时偶然发现了这一点。如果我需要实际使用API,我一定会参考它。我想这是最有用的订单履行者,我会参考我们目前的供应商的相关工具。(他们目前使用CSV导出)嗨,格哈德。我也有同样的问题。我也更改了签出,但仍然是相同的错误。你能帮帮我吗?[我和你呆在同一个地方。你能共享完整的url吗?完整的url在我的问题中。@Gerhard的答案解决了这个问题。如果你仍然有问题,如果你的服务器在头中发送身份验证时遇到困难(仅限基本身份验证),那么将身份验证凭据作为GET参数传递可能是一个解决办法例如,
https://example.com/wc-api/v1/orders?consumer_key=ck_7xxxxx&consumer_secret=cs_7xxxxxx
另外,它是一个方便的工具,用于测试API,而无需摆弄curl等。