2013-07-11 3 views
0

안녕하세요 컬 기능으로 xively 사용하고 싶습니다. 나는 나무 딸기로 내 arduino의 값을 검색하는 nodejs를 사용합니다. 몇 번의 시도 후에도 실패했기 때문에 nodejs와 함께 컬을 사용하는 방법을 알고 있는지 알고 싶습니다. 감사합니다.node.js Xively curl

+0

시도한 초기 코드를 표시 할 수 있습니까? 나는 그것이 출발점으로 도움이 될 것이라고 생각합니다. – praks411

답변

1

PHP curl을 언급하면 ​​node.js에 "curl"("클라이언트 URL")이 없음을 알아야합니다. http 요청을하기 위해 모듈이 requestget 개의 메소드를 가지고 있습니다. PHP와 같은 목적을 가지고 있습니다.

child_process.exec을 사용하여 여전히 셸 스크립트를 실행할 수 있지만 exec를 통해 실행하는 응용 프로그램이 플랫폼에 종속 될 위험이 있으므로 Windows에서 작동하고 Linux 또는 이와 유사한 문제가 발생하지 않을 수 있습니다. x의 경우 http.request를 사용해야합니다. 그러면 모든 작업이 완료됩니다. 그리고 curl에서 child_process.exec을 통해 출력을 얻는 것이 http.request을 통해서보다 훨씬 어려울 것이므로 더 쉬울 것입니다.

그래서 여기에 문서를 기반으로 : 나는 브라우저에서이 코드를 작성했습니다, 그리고 확실하지가 완전히 정확

var data = JSON.stringify({ 
    title: 'My feed', 
    version: '1.0.0' 
}); 

var req = http.request({ 
    host: 'api.xively.com', 
    path: '/v2/feeds', 
    method: 'POST', 
    headers: { 
    'X-ApiKey': 'YOUR_API_KEY_HERE', 
    'Content-Type': 'application/json', 
    'Content-Length': data.length 
    } 
}, function(res) { 
    res.setEncoding('utf8'); 
    console.log('Status Code: ' + res.statusCode); 
    console.log('Headers:'); 
    console.log(res.headers); 

    var buffer = ''; 
    res.on('data', function(chunk) { 
    buffer += chunk; 
    }); 
    res.on('end', function() { 
    console.log('complete'); 
    console.log(buffer); 
    }); 
}); 

res.write(data); 
res.end(); 

: https://xively.com/dev/tutorials/curl/
나는 그들의 피드를 조회하기 위해 http.request 대안을 만들었습니다 , 그것을 시도해 보시고 내가 위의 코드를 수정할 것이 틀린 것이 있으면 알려주십시오.
CURL이 제공하는 모든 기능을 지원하며 사용의 관점에서 볼 때 더욱 유연하고 멋지다.

HTTP 호출을 위해 자유롭게 사용하십시오.

+0

그리고 node.js로 쉘 스크립트를 어떻게 실행합니까? – user2572562

+0

위의 답변을 업데이트했습니다. 하지만'http.request'를 사용하면 curl과 같고 사용하기 쉽습니다. 'child_process.exec'와 마찬가지로'curl'을 호출하면 사용하기가 더 복잡해지고 코딩도 더 복잡해집니다. 어떤 장점도없이. – moka

+0

그러나 스크립트 쉘을 실행할 수 있습니까? 이 말풍선은 nodejs에서 어떻게 사용합니까? curl --request PUT \ - 데이터 - 바이너리 {{ "데이터 스트림": [{ "id": "1", "태그": "1", "current_value": "12"}}} ' - 헤더 "X-ApiKey : Q"\ - verbose \ https://api.xively.com/v2/feeds/ – user2572562

0

그러나 스크립트 셸을 실행할 수 있습니까?

이 말풍선은 nodejs에서 어떻게 사용됩니까? curl --request PUT \ - 데이터 - 바이너리 {{ "데이터 스트림": [{ "id": "1", "태그": "1", "current_value": "12"}}} ' - 헤더 "X-ApiKey : Q"\ - verbose \ https://api.xively.com/v2/feeds/