Restify не анализирует данные из метода PUT Resquest

Я использую последнюю версию (2.6.1) Restify, и я действительно не знаю, что происходит, когда Restify не анализирует данные, отправленные методом PUT/POST, это просто не имеет смысла, Restify должен назначать данные для "req.params". Я просто потерял много времени, чтобы понять это, и я просто не знал, что происходит. Это реальная проблема или я полностью неправильно понял документацию?

Итак, я выполняю следующую команду curl:

curl -is -X PUT -d "phone=1-800-999-9999" http://localhost:8080/note

И он просто не возвращает никаких параметров, он должен возвращать значение телефона, введенное командой curl выше:

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 4
Date: Wed, 29 Jan 2014 15:14:22 GMT
Connection: keep-alive
"{}"

Это полный код, не может быть проще, чем это:

var restify = require('restify');
var server = restify.createServer({
  name: 'App',
  version: '1.0.0'
});
server.use(restify.acceptParser(server.acceptable));
server.use(restify.bodyParser());
server.use(restify.queryParser());
function send(req, res, next) {
  res.send(JSON.stringify(req.params));
  return next();
}
var server = restify.createServer();
server.put('/note', send);
server.listen(8080, function() {
  console.log('%s listening at %s', server.name, server.url);
});

У кого-то есть ответ на это поведение? Это действительно расстраивает...

1 ответ

Решение

Попробуйте опубликовать, чтобы восстановить как JSON. Как это:

{ "phone" : "1-800-999-9999" }
Другие вопросы по тегам