Как получить доступ к данным, размещенным в restify 1.x.x? - PullRequest
27 голосов
/ 17 февраля 2012

Я отправляю данные в API восстановления, но в настоящее время не могу найти примеров того, как получить доступ к опубликованным данным. Как это работает?

Ответы [ 4 ]

45 голосов
/ 17 февраля 2012

Я нашел ответ. Один из включенных плагинов должен быть активирован, restify.bodyParser. Затем данные могут быть найдены либо в req.params (по умолчанию), либо в req.body (mapParams: false), в зависимости от настроек (смотрите конкретно в разделе BodyParser).

Пример:

server.use(restify.bodyParser({ mapParams: false })); // mapped in req.body

Или:

server.use(restify.bodyParser()); // mapped in req.params
6 голосов
/ 27 июля 2017

Для restify 5.0.0+, используйте:

server.use(restify.plugins.bodyParser());

https://github.com/restify/node-restify/issues/1394#issuecomment-312728341

Для более старых версий используйте:

server.use(restify.bodyParser());

После указания restify для использования bodyParser middleware тело запроса будет доступно в свойстве body объекта запроса:

server.post('/article', (req, res, next) => {
  console.log(req.body)
  next()
})
5 голосов
/ 08 июля 2012

Очень просто:

server.use(restify.bodyParser({ mapParams: false }));

Вам нужно активировать bodyParser в restify

1 голос
/ 06 марта 2016

Этот код выведет тело запроса на консоль:

var restify = require('restify');
var server = restify.createServer();

// This line MUST appear before any route declaration such as the one below
server.use(restify.bodyParser());

server.post('/customer/:id', function (req, resp, next) {
  console.log("The request body is " + req.body);
  response.send("post received for customer " + req.params.id + ". Thanks!");
  return next();
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...