Подтвердить что ты не робот

Как получить доступ к данным, опубликованным в файле restify 1.x.x?

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

4b9b3361

Ответ 1

Я нашел ответ. Один из включенных плагинов должен быть активирован, 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

Ответ 2

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

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

Вам нужно активировать bodyParser в обновлении

Ответ 3

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

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

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

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

server.use(restify.bodyParser());

После того, как вы сообщите об обновлении для использования промежуточного программного обеспечения bodyParser, тело запроса будет доступно в свойстве тела объектов запроса:

server.post('/article', (req, res, next) => {
  console.log(req.body)
  next()
})

Ответ 4

Этот код напечатает тело запроса на консоли:

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();
});