欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

笔记:flas请求处理

程序员文章站 2022-03-03 20:13:43
...

路由匹配

一般格式:

@app.route('goback/<int:year>')
Flask内置的URL变量转换器

转换器 说明
string 不包含斜线的字符串(默认值)
int 整型
float 浮点数
path 包含斜线的字符串。static路由的URL规则中的filename变量就使用了这个转换器
any 匹配一些列给定值中的一个元素
uuid UUID字符串

any的用法如下:

@app.route('/colors/<any(blue, white, red):color>')
def something():
    pass

# 或写成
colors = ['blue', 'white', 'red']
@app.route('/colors/<any(%s):color>'%str(colors)[1:-1])

设置监听的HTTP方法,默认为GET

@app.route('goback/<int:year>', methods=['GET', 'POST'])

请求钩子

钩子 说明
before_first_request 注册一个函数,在处理第一个请求前运行
before_request 注册一个函数,在处理每个请求前运行
after_request 注册一个函数,如果没有未处理的异常抛出,会在每个请求结束后运行
teardown_request 注册一个函数,即使有未处理的异常抛出,也会在每个请求结束后运行。如果发生异常,会传入异常对象作为参数到注册的函数中。
after_this_request 在视图函数内注册一个函数,会在这个请求结束后运行

这些方法也都是装饰器,如:

@app.before_request
def do_something():
    pass
相关标签: route