Flask最小原型与唯一URl原则
Posted Aspirantlu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask最小原型与唯一URl原则相关的知识,希望对你有一定的参考价值。
Flask最小原型与唯一URl原则
编写一个Flask的最小模型 fisher.py:
from flask import Flask
app = Flask(__name__)
@app.route('/hello')
def hello():
# 另一种 基于类的视图(也叫即插视图)
return 'Hello, lulu'
app.run()
然后进入虚拟环境,启动项目
python3.6 fisher.py
此时在浏览器访问 http://127.0.0.1:5000/hello)
时,会打印 Hello, lulu
,如果我在后面多加了 /
,也就是 http://127.0.0.1:5000/hello/
,那么就会报错404。
那么如何兼容这两者呢,只要在注册路由时将 url 路径最后加上 /
即可。
from flask import Flask
app = Flask(__name__)
@app.route('/hello/')
def hello():
# 另一种 基于类的视图(也叫即插视图)
return 'Hello, lulu'
app.run()
再次访问 http://127.0.0.1:5000/hello
时,
会重定向到 http://127.0.0.1:5000/hello/
。
直接访问 http://127.0.0.1:5000/hello/
时,
为什么当我访问 http://127.0.0.1:5000/hello
时,会重定向呢。是因为,如果说不做重定向, 带 /
和 不带 /
都可以访问,实质是同一个视图函数(或资源)对应的是两个不同的路由,没有保证唯一URL原则。
以上是关于Flask最小原型与唯一URl原则的主要内容,如果未能解决你的问题,请参考以下文章