Flask路由系统

前置代码

from flask import Flask, jsonify

app = Flask(__name__)

1 flask 路由系统是基于装饰器的,但是它的本质是:

add_url_rule 

2 装饰器的参数及作用

'''
1 rule : 路径  
2 methods: 可以允许的请求方式
3 endpoint:路由别名
'''

3 如果不用装饰器注册路由,需要使用:

app.add_url_rule('/', 'index', index, methods=['GET'])

4 详细研究:add_url_rule

它的参数,都可以给@app.route('/')

# 1 rule, URL规则

# 2 view_func, 视图函数内存地址

# 3 defaults = None, 默认值, 当URL中无参数,函数需要参数时,使用defaults = {'k': 'v'}为函数提供参数
@app.route('/',defaults={name:zeng})
def index(name):
    pass

# 4 endpoint = None, 名称,用于反向生成URL,即: url_for('名称')

# 5 methods = None, 允许的请求方式,如:["GET", "POST"]

# 6 strict_slashes = None  对URL最后的 / 符号是否严格要求
    @app.route('/index', strict_slashes=False)
    # 访问http://www.xx.com/index/ 或http://www.xx.com/index均可

    @app.route('/index', strict_slashes=True)
    # 仅访问http://www.xx.com/index

# 7 redirect_to = None  重定向到指定地址
    @app.route('/index/<int:nid>', redirect_to='/home/<nid>')


书写方式

app.add_url_rule('/', 'index', index, methods=['GET'])
app.add_url_rule('/login', 'login', login)

if __name__ == '__main__':
    app.run()
posted @ 2024-02-28 16:55  wellplayed  阅读(25)  评论(0)    收藏  举报