Ответ 1
Вам просто нужно загрузить плагин-синтаксис запроса так:
server.use(restify.queryParser());
Сценарий. Мы, разработчик, пытаемся заменить веб-службу (написанную на С#.Net) Node.JS Restful API.
Проблема. Теперь нам нужно обрабатывать входящий запрос как есть (у нас нет контроля над ним). Итак, формат входящего URL:
http://www.website.com/Service.aspx?UID=Trans001&FacebookID=ae67ea324&GetDetailType=FULL
Я могу обрабатывать URL-адрес, например:
http://www.website.com/service/Trans001/ae67ea324/FULL
Я могу проанализировать/прочитать параметр из вышеуказанного URL
код:
var server = require('restify').createServer();
function respond(req, res, next) {
console.log("req.params.UID:" + req.params.UID);
console.log("req.params.FacebookID:" + req.params.FacebookID);
console.log("req.params.GetDetailType" + req.params.GetDetailType);
}
server.get('/service/:UID/:FacebookID/:GetDetailType', respond);
server.listen(8080, function () {
console.log('%s listening at %s', server.name, server.url);
});
Вопрос. Как я могу прочитать несколько параметров из URL-адреса, отформатированного как http://www.website.com/Service.aspx?UID=Trans001&FacebookID=ae67ea324
Вам просто нужно загрузить плагин-синтаксис запроса так:
server.use(restify.queryParser());
Ответ Саймона больше недействителен, поскольку обновление запросаParser было перенесено в пакет restify-plugins. Обновленное решение
server.use(require('restify-plugins').queryParser());
Восстановить ответ 5 (2017):
Как и в случае восстановления 5, вы можете настроить парсер запросов следующим образом:
server.use(restify.plugins.queryParser());
.
Если вы используете этот плагин, вы можете получить доступ к анализируемым параметрам в req.query
.
Дополнительные параметры и сведения см. в документации по восстановлению: http://restify.com/docs/plugins-api/#queryparser