2011-06-23 12 views
13

¿Cuál es la forma preferida de especificar el valor booleano en la parte de consulta de URI? Una cadena de consulta normales pareceBooleano en una consulta URI?

a=foo&b=bar 

Decir que tengo un parámetro "c" con un valor booleano, debería indicar

a=foo&b=bar&c=1 

O

a=foo&b=bar&c=True 

O

a=foo&b=bar&c=true 

Comprobé la sección del componente de consulta n de RFC 2396 y no especifica cómo expresar un parámetro booleano. Entonces, ¿qué quiero saber es cuál es la forma común (o razonable) de hacerlo?

+2

La especificación URI (hoy en día RFC 3986), simplemente no le importa. –

+1

Yo diría que haga lo que sea más fácil, es decir, si está en Java, Boolean.parseBoolean ("verdadero") ... – Blaskovicz

Respuesta

10

Depende completamente de la forma en que lea la cadena de consulta. Todo lo que pides es válido.

2

En nodo con un servidor express, puede agregar un middleware analizador booleano como express-query-boolean.

var boolParser = require('express-query-boolean'); 

// [...] 

app.use(bodyParser.json()); 
app.use(boolParser()); 

Sin

// ?a=true&b[c]=false 
console.log(req.query); 
// => { a: 'true', b: { c: 'false' } } 

Con

// ?a=true&b[c]=false 
console.log(req.query); 
// => { a: true, b: { c: false } } 
Cuestiones relacionadas