塔路线中的尾随斜线



在最新版本的Routes(1.10)中,使尾部斜杠无关紧要的最佳方法是什么?我目前正在使用明显非DRY:

map.connect('/logs/', controller='logs', action='logs')
map.connect('/logs', controller='logs', action='logs')

我认为打开最小化功能会奏效,但我的印象是,它在新版Routes中被禁用是有原因的。不幸的是,文档似乎没有跟上Routes的开发,所以我找不到任何好的资源。有什么想法吗?

作为最后一条路由添加的以下片段对我有效:

map.redirect('/*(url)/', '/{url}',
             _redirect_code='301 Moved Permanently')

有两种可能的方法来解决这个问题:

  1. 完全在塔架中进行
  2. 添加一个htaccess规则来重写尾部斜杠

就我个人而言,我不喜欢后面的斜杠,因为如果你有一个类似于的uri

http://example.com/people

您应该能够通过访问获得相同的xml格式的数据

http://example.com/people.xml

http://www.siafoo.net/snippet/275有一个基本的中间件,可以从请求中删除尾部斜杠。这是一个聪明的想法,在我意识到中间件的作用后,我对WSGI应用程序中中间件的概念有了更好的理解。

相关内容

  • 没有找到相关文章

最新更新