Flask路由尾部有没有斜杠有什么区别
短信预约 -IT技能 免费直播动态提醒
URL重定向行为
路由的尾部加不加斜杠不一样的,比如:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'index page'
@app.route('/qwe')
def test():
return 'test'
if __name__ == '__main__':
app.run()
在访问路由/qwe
的时候,路由应该写成/qwe
,是可以访问到的,但是如果写成/qwe/
则会报错
/qwe
访问
/qwe/
访问
报错代码是404:说明找不到这个url对应的资源
如果代码修改为:
@app.route('/qwe/')#后面加了一个斜杠
def test():
return 'test'
两种访问方式都可以,可以自己试下。
注意到,在浏览器地址栏输入/qwe
时,会自动变成/qwe/
,这是因为flask自动进行了重定向,查看返回的状态码:
表示的是访问的/qwe
被永久的转移到了/qwe/
,所以自动进行了重定向行为。
所以路由末尾不带/的,访问的时候就不能加斜杠。
另外,如果现在修改代码为@app.route('/qwe')
,把斜杠去掉再运行,会一直出错,因为它一直重定向,这时清除浏览器缓存就行。
到此这篇关于Flask路由尾部有没有斜杠有什么区别的文章就介绍到这了,更多相关Flask路由尾部斜杠内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341