尝试学习烧瓶但遇到一些错误或可能是一个问题。
def check_int(no):
return "number is %d" %no
app.add_url_rule('/hello/<int:no>', 'nothign_specific', check_int)
因此,当我对http://127.0.0.1:5000/hello/1
进行卷曲调用时,它会失败,其中相同的卷曲调用除1次传递之外的任何其他数字。
http://127.0.0.1:5000/hello/<any number apart from 1 passes>
127.0.0.1 - - [05/Aug/2016 14:17:48] "GET /hello/1/ HTTP/1.1" 404 -
127.0.0.1 - - [05/Aug/2016 14:18:01] "GET /hello/12 HTTP/1.1" 200 -
有人能告诉我正在发生的事情
答案 0 :(得分:1)
在烧瓶中,如果您的路径(或规则)定义没有尾部斜杠是明确的。如果要在网址规则中添加尾随/
,即
'/hello/<int:no>/'
然后你就可以同时使用(请求有或没有/
)。
根据flask文档,具有尾部斜杠的路径被视为类似于文件系统中的文件夹名称:如果在没有斜杠的情况下访问,则烧瓶将识别它并将您重定向到具有斜杠的路径削减。相比之下,没有尾部斜杠定义的路由被视为文件的路径名,即当使用尾部斜杠访问时,它将抛出404
。
阅读详情:http://flask.pocoo.org/docs/0.11/quickstart/,&#34;唯一网址/重定向行为&#34;