안녕하세요 컬 기능으로 xively 사용하고 싶습니다. 나는 나무 딸기로 내 arduino의 값을 검색하는 nodejs를 사용합니다. 몇 번의 시도 후에도 실패했기 때문에 nodejs와 함께 컬을 사용하는 방법을 알고 있는지 알고 싶습니다. 감사합니다.node.js Xively curl
답변
PHP curl을 언급하면 node.js에 "curl"("클라이언트 URL")이 없음을 알아야합니다. http 요청을하기 위해 모듈이 request
및 get
개의 메소드를 가지고 있습니다. 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 호출을 위해 자유롭게 사용하십시오.
그리고 node.js로 쉘 스크립트를 어떻게 실행합니까? – user2572562
위의 답변을 업데이트했습니다. 하지만'http.request'를 사용하면 curl과 같고 사용하기 쉽습니다. 'child_process.exec'와 마찬가지로'curl'을 호출하면 사용하기가 더 복잡해지고 코딩도 더 복잡해집니다. 어떤 장점도없이. – moka
그러나 스크립트 쉘을 실행할 수 있습니까? 이 말풍선은 nodejs에서 어떻게 사용합니까? curl --request PUT \ - 데이터 - 바이너리 {{ "데이터 스트림": [{ "id": "1", "태그": "1", "current_value": "12"}}} ' - 헤더 "X-ApiKey : Q"\ - verbose \ https://api.xively.com/v2/feeds/ – user2572562
그러나 스크립트 셸을 실행할 수 있습니까?
이 말풍선은 nodejs에서 어떻게 사용됩니까? curl --request PUT \ - 데이터 - 바이너리 {{ "데이터 스트림": [{ "id": "1", "태그": "1", "current_value": "12"}}} ' - 헤더 "X-ApiKey : Q"\ - verbose \ https://api.xively.com/v2/feeds/
시도한 초기 코드를 표시 할 수 있습니까? 나는 그것이 출발점으로 도움이 될 것이라고 생각합니다. – praks411