도움이 필요합니다. 내 노드 서버에 json 데이터를 게시하고 있습니다. 노드 서 v는 해당 API에 대해 RESTify를 사용 중입니다. 게시 된 데이터 본문에서 req.body.name
이 도착하는 데 문제가 있습니다.Node.js에서 RESTify POST body/json
게시 된 데이터에 json 본문이 포함되어 있습니다. 그 안에는 이름, 날짜, 주소, 이메일 등의 키가 있습니다.
저는 json 본문에서 이름을 얻고 싶습니다. req.body.name
을하려고하는데 작동하지 않습니다.
나는 또한 server.use(restify.bodyParser());
을 포함했으며 작동하지 않습니다.
나는 req.params.name
수 있으며 값을 할당합니다. 하지만 내가 POST json 데이터 (예 : {'food': 'ice cream', 'drink' : 'coke'}
)를 사용하면 정의되지 않은 상태가됩니다. 그러나, 내가 req.body
을하면, 전 json 본문이 게시됩니다. 특별히 'drink'와 같은 항목을 가져 와서 console.log에 표시 할 수 있기를 원합니다.
var restify = require('restify');
var server = restify.createServer({
name: 'Hello World!',
version: '1.0.0'
});
server.use(restify.acceptParser(server.acceptable));
server.use(restify.jsonp());
server.use(restify.bodyParser({ mapParams: false }));
server.post('/locations/:name', function(req, res, next){
var name_value = req.params.name;
res.contentType = 'json';
console.log(req.params.name_value);
console.log(req.body.test);
});
server.listen(8080, function() {
console.log('%s listening at %s', server.name, server.url);
});
'req.body.test'의 값은 무엇입니까? – Gntem
만약 그렇다면 헤더를 요청하기 위해'Content-Type : application/json'을 적용해야합니다. 그래서 restify는 자동적으로 그렇게 할 수 있습니다. – Gntem
@Phoenix 당신은 내가 그것을 upvote 수 있도록 답변으로 추가해야합니다. 매력처럼 작동합니다. – pbkhrv