node.js - nodejs - req.query express
Cómo analizar/leer múltiples parámetros con el marco de Restify para Node.JS (3)
Escenario : Los desarrolladores intentamos reemplazar un servicio web (escrito en C # .Net) con Node.JS Restful API.
Problema : ahora necesitamos manejar la solicitud entrante tal como está (no tenemos control sobre ella). Así que el siguiente es el formato de la URL entrante:
http://www.website.com/Service.aspx?UID=Trans001&FacebookID=ae67ea324&GetDetailType=FULL
Soy capaz de manejar la URL como:
http://www.website.com/service/Trans001/ae67ea324/FULL
Puedo analizar / leer el parámetro de la URL anterior
Código:
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);
});
Pregunta : ¿Cómo puedo leer los múltiples parámetros de la URL con el formato http://www.website.com/Service.aspx?UID=Trans001&FacebookID=ae67ea324
La respuesta de Simon ya no es válida, ya que el queryParser de restify se ha movido al paquete restify-plugins. La solución actualizada es
server.use(require(''restify-plugins'').queryParser());
Solo necesitas cargar el plugin del analizador de consultas como tal;
server.use(restify.plugins.queryParser());
Respuesta de Restify 5 (2017):
A partir de Restify 5 ahora puede configurar el analizador de consultas de esta manera: server.use(restify.plugins.queryParser());
.
Si usa este complemento, puede acceder a los parámetros analizados en req.query
.
Para obtener opciones e información adicionales, eche un vistazo a la documentación de restify: http://restify.com/docs/plugins-api/#queryparser