2016-02-02 38 views
0

我正在構建一個node.js/express/mongo + mongoose項目,並且我遇到了區分大小寫的URL的問題。我希望能夠去/location/london不過,我從數據庫中調用:name實際上是Londonnode.js表達和貓鼬默認爲區分大小寫的URL

我routes.js文件如下:然而

app.get('/location/:name', function(req, res) { 
    mongoose.model('locations').find({name: req.params.name}, function(err, locations) { 
    res.send(locations); 
    }) 
}) 

/location/London將工作/location/london/不會。

不知道我在做什麼錯。剛剛掌握Express。雖然express docs說URL默認是大小寫敏感的。

區分大小寫路由|布爾|啓用區分大小寫。

已禁用。將「/ Foo」和「/ foo」視爲相同。

回答

0

而不是通過req.params.name你可以通過req.params.name.toLowerCase()。這應該可以解決你的問題。 或者您應該確保您的路由設置爲不區分大小寫,並且您重新啓動服務器以便刷新配置。

+0

我無法得到這個工作,我仍然通過/位置/倫敦,它不會返回任何東西,但倫敦將因爲這就是它在mongo數據庫。目前,我不確定這是否是正確的做事方式,但我只是添加了一個子彈,所以我可以使用它,然後轉到/ location/london,然後在模板的其他地方使用name:London –