2011-06-23 14 views
13

URIのクエリ部分にブール値を指定する好ましい方法は何ですか?URIクエリのブール値?

a=foo&b=bar 

は私が

a=foo&b=bar&c=1 

それとも

a=foo&b=bar&c=True 

それとも

a=foo&b=bar&c=true 
を明記してください私は、ブール値でパラメータ "c" を持っていると言うように、通常のクエリ文字列が見えます

クエリコンポーネントのセクションを確認しましたnがRFC 2396であり、ブール値パラメータの表現方法は指定されていません。だから私が知りたいのは、それを行う一般的な(または合理的な)方法は何ですか?

+2

URIの仕様(最近はRFC 3986)で

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

なし

var boolParser = require('express-query-boolean'); // [...] app.use(bodyParser.json()); app.use(boolParser()); 

は単に気にしません。 –

+1

私は一番簡単なことを言っているだろう - つまり、あなたがjava、Boolean.parseBoolean( "true")であれば... – Blaskovicz

答えて

10

完全にクエリ文字列を読み取る方法に依存します。あなたが求めるものはすべて有効です。

2

エクスプレスサーバーのノードでは、express-query-booleanのようなブール型パーサーミドルウェアを追加できます。

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