Flask请求到响应的流程

【配置路由】

使用装饰器配置路由

[语法规则 ]

@app.route(url,methods)

[参数解释]

url :匹配的URL地址

methods;支持的请求方式(['GET','POST'])

[例子]

@app.route('/login', methods=['GET','POST'])   #是以GET或者POST请求方式来请求这个登录地址

@app.route('/login', methods=['GET', 'POST'])
def login():
    return "login success"
print(app.url_map)

【路由匹配规则】

【匹配整个文字】

@app.route('/hello')

【传递参数】

@app.route('/user/<username>')  # 在请求的URL里面加了username的参数 

【指定参数类型】

@app.route('/post/<int:post_id>')  # 在请求的URL里面加了post_id的参数,并且指定参数类型为int

【URL参数类型】

除了上面我们写的int类型,还有很多类型 见下图

【视图函数获取页面传值】

代码例子

"""URL中的参数为必填时"""
@app.route('/page/<page_id>')
# 那么我们的方法中也要把这个参数传过来
def  list(page_id):
    return '返回page_id为{}的数据'.format(page_id)




"""URL中的值为填和不填都可以时"""
@app.route('/page/<page_id>')
# 那么我们的方法中要定义这个参数为None然后再传过来
def  list(page_id=None):
    pass

【请求对象】

  1. method:请求的类型(GET/POST/OPTIONS等)
  2. form: POST请求数据dict
  3. args:   GET请求数据dict
  4. values: POST/GET请求数据集合dict
  5. files: 上传的文件数据dict
  6. cookies: 请求中的cookie
  7. headers: HTTP请求头

【响应对象】

原文地址:https://www.cnblogs.com/xinhua19/p/15055627.html