muñecas - nancy muñeca
Obtenga los parámetros de url en NancyFx (3)
Hay 2 cosas que intentas obtener de la URL. Una es una parte de la ruta por hourly
, y la otra son los parámetros en la cadena de consulta, es decir, los valores de from
y to
.
Puede acceder a la parte de la ruta a través del parámetro para el controlador: la x
en su ejemplo.
Puede acceder a la cadena de consulta a través de la Request
que se puede acceder en el NancyModule
.
Para poner esto en el código:
Get["consumptions/{granularity}"] = x =>
{
var granularity = x.granularity;
var from = this.Request.Query["from"];
var to = this.Request.Query["to"];
}
Las variables granularity
. from
y to
son todos dynamic
, y es posible que deba convertirlos al tipo que desee.
Estoy usando NancyFx para construir una API web, pero estoy enfrentando algunos problemas al obtener parámetros de la URL.
Necesito enviar, a la API, la solicitud .../consumptions/hourly?from=1402012800000&tags=%171,1342%5D&to=1402099199000
y capturar el valor de los parámetros: granularity, from, tags y to. Intenté varias aproximaciones y ninguna funcionó. Lo intenté, por ejemplo,
Get["consumptions/{granularity}?from={from}&tags={tags}&to={to}"] = x =>
{
...
}
¿Cómo puedo hacer esto?
Luis Santos
Puede dejar que el enlace de modelo de NancyFx se ocupe de la cadena de consulta url.
public class RequestObject
{
public string Granularity { get; set; }
public long From { get; set; }
public long To { get; set; }
}
/ consumos / por hora? from = 1402012800000 & to = 1402099199000
Get["consumptions/{granularity}"] = x =>
{
var request = this.Bind<RequestObject>();
}
Puedes simplemente usar:
var from = Request.Query.from;