3
내가 명령Node.js를 HTTP POST 요청에 -d 해당 말림
curl -X POST -d 'some data to send' http://somehost.com/api
이
var http = require('http');
var post_data = 'some data to send',
headers = {
host: 'somehost.com',
port: 80,
method: 'POST',
path: '/api',
headers: {
'Content-Length': Buffer.byteLength(post_data)
}
};
var request = http.request(headers, function(response) {
response.on('data', function(d) {
console.log(d);
});
});
request.on('error', function(err) {
console.log("An error ocurred!");
});
request.write(post_data));
request.end();
질문과 같은 일부 코드와 Node.js를 에뮬레이트 할 수 있다는 것을 알고있다 m은 cURL 명령의 노드에서 해당 노드를 찾습니다.
curl -d name="Myname" -d email="[email protected]" -X POST http://somehost.com/api
어떻게 할 수 있습니까?
Cherrypy server like this one에 POST 요청을 보내고 요청을 완료 할 수 없기 때문입니다.
편집 솔루션, @mscdex 말했듯이, 요청 라이브러리이었다
내가 요청 라이브러리의 문제를 해결했습니다. 솔루션에 대한 내 코드는
var request = require('request');
request.post('http://localhost:8080/api', {
form: {
nombre: 'orlando'
}
}, function(err, res) {
console.log(err, res);
});
고맙습니다!
var post_data = 'name=Myname&[email protected]';
아니면 (특히 좋은됩니다 당신이 파일을 업로드 할 수있는 경우)을 위해 탈출 데이터와 다른 일을 처리하기 때문에 당신이 그것을 처리하기 위해 request 같은 모듈을 사용할 수 있습니다
네 말이 맞아. 요청 라이브러리 문제를 해결했습니다. 솔루션 코드가 입니다. var request = require ('request'); request.post ("HTTP : // 로컬 호스트 : 8080/API '{ 형태 { 브레'올랜도 ' }} 함수 (ERR, 입술) { CONSOLE.LOG (ERR, 해상도) ; }}); 감사합니다. – Orlando