2017-03-21 2 views
0

오케이 저는 VERRY VERRY VERRY라는 주제에 익숙하지 않으므로 제발 쉽게 가십시오. 내가 한 것은 워드 프레스 woocommerce 웹 사이트를 만드는 것입니다. 지금하고 싶은 것은 node.js의 wordpress 사이트에서 제품 데이터를 얻는 것입니다. 내가 모든 것을 올바르게 이해했다면 나는 먼저 자신을 인증해야합니다. 나는 그것이 우리 모두의 verry 열린 질문 깨닫고 내가부터 지금까지의 수 있습니다node.js의 WooCommerce REST API를 인증하십시오.

var WooCommerce = require('woocommerce'); 

var wooCommerce = new WooCommerce({ 
    consumerKey: 'ck_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
    consumerSecret: 'cs_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
    url: 'http://localhost/wordpress', 


}); 

:이 같은 Authenticante하려고

다음
npm install --save woocommerce-api 

:

먼저 내가 가진 WooCommerce 패키지를 설치 오른쪽 트랙. 그러나 나는 약간의 조언이나 조언을 appriciate 것이다.

감사합니다!

답변

1

음, npm에 'woocommerce-api'가 설치되어 있으므로 'woocommerce'가 아닌 'woocommerce-api'가 필요합니다.

var WooCommerceAPI = require('woocommerce-api'); 

문서를 참조하십시오.하지만 대부분은 올바르게 인스턴스화 된 것처럼 보입니다. 당신은 WP REST API를 사용하는 경우에는 라이브러리의 문서에 따라 키 wpAPI 및 버전을 포함해야합니다 : https://www.npmjs.com/package/woocommerce-api

를 이제, 당신이 제품을 받기를 원한다면, 당신은 같은 것을 할 것입니다 :

wooCommerce.getAsync('products').then(function(result) { 
    return JSON.parse(result.toJSON().body); 
}); 

약속보다 콜백을 사용하려는 경우 .getAsync 대신 .get을 사용할 수 있습니다.

+0

고맙습니다! 그러나 당신이 성공적으로 인증되었는지 확인할 수있는 방법이 있습니까? 나는 어떤 meassages도 얻지 않는다. 그러나 나는 제품을 얻는 것을 처리하지 않는다. 나는 "Undefiend"또는 잘못된 URL을 얻습니다. 내가 URL을 서핑하면 모든 json-data를 보여줍니다. –

+0

getAsync 요청에 .catch (function (e) {console.log (e)})를 추가 할 수 있어야합니다. 오류가 발생하면이 방법으로 오류를 볼 수 있습니다. http://bluebirdjs.com/docs/api/catch.html –

관련 문제