【配置路由】

使用装饰器配置路由

[语法规则 ]

@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类型,还有很多类型 见下图

Flask请求到响应的流程_参数类型

 

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



代码例子

"""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请求头
【响应对象】

Flask请求到响应的流程_post请求_02