2014-02-20 5 views
3

new RESTful API을 포함하는 최신 버전의 WooCommerce 2.1로 최근에 업데이트했습니다. 나는 cURL 또는 RESTful API에 대한 많은 경험이 없지만 나는 그 역할을 생각했다.RESTful API - WooCommerce REST API 요청이 말림으로 실패했습니다

내 사이트는 sergedenimes.com이고 SSL은 서버에 설정되어 있습니다. 내가 curl https://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 관리자 아래에 내 열쇠와 비밀을 설정하고 값을 전달하지만 그것은 내 요청과 함께 전달하지 않을 것 같다.

아이디어가 있으십니까?

+0

나는 당신과 같은 장소에 머물렀다. 전체 URL을 공유 할 수 있습니까? – khanghoang

+0

전체 URL은 질문입니다. @ Gerhard의 대답으로 해결되었습니다. 그래도 문제가 해결되지 않으면 서버가 헤더에서 전송되는 인증 (기본 인증 만)과 충돌하는 경우 GET 매개 변수로 인증 정보를 전달하면 해결 방법이 될 수 있습니다. 예 : 'https : //example.com/wc-api/v1/orders? consumer_key = ck_7xxxxx & consumer_secret = cs_7xxxxxx' – harryg

+0

또한 [Postman] (https://chrome.google.com/webstore/detail/postman-rest-client/) fdmmgilgnpjigdojojpjoooidkmcomcm? hl = ko)은 컬링 등을하지 않고도 API를 테스트 할 수있는 편리한 도구입니다. – harryg

답변

6

WooCommerce -> 설정 -> Checkout에서 보안 체크 아웃 옵션을 사용 설정해야합니다. 이 옵션을 사용하도록 설정하면 기본 인증 만 사용됩니다.

+0

그걸 해결 한 것 같습니다. 감사. – harryg

+2

나는이 편리한 클라이언트 라이브러리를 작성하여 API와 더 쉽게 상호 작용할 수 있도록했다. http://gerhardpotgieter.com/2014/02/10/woocommerce-rest-api-client-library/ – Gerhard

+0

예 인터넷 검색시 그 페이지를 우연히 발견했다. . 필자는 API를 실제로 사용해야 할 때 참조해야합니다. 필자는 이행자를 주문하는 것이 가장 유용하다고 생각하며 현재 제공 업체를 관련 도구로 안내 할 것입니다. (그들은 현재 CSV 내보내기를 사용합니다.) – harryg