6、flask-request请求
request属性:
1.url 完整的请求地址
2.base_url 去掉GET参数的URL
3.host_url 只有主机和端口号的URL
4.path 路由中的路径
5.method 请求方法
6.remote_addr 请求的客户端地址
7.args GET请求参数
8.form POST请求参数
9.files 文件上传
10.headers 请求头
11.cookies 请求中的cookie
views.py
# 路由 + 视图函数
from flask import Blueprint, request
# from models import *
#蓝图
# 创建蓝图对象
# 第一个参数:蓝图的名字
# 第二个参数:蓝图的包名
blue = Blueprint('user', __name__,)
@blue.route('/') # 路由
def index():
return 'user index'
# 请求和响应
# Request 对象 导入from flask import request
@blue.route('/request/', methods=['GET', 'POST'])
def get_request():
pass
# print(request)
#重要属性
#get请求 打印请求的参数或属性
print(request.method) #请求方法 GET或POST http://127.0.0.1:5000/request/
# 请求参数 http://127.0.0.1:5000/request/?name=zhangsan&&name=lishi&age=18
# 输出一个类字典对象:ImmutableMultiDict([('name', 'zhangsan'), ('name', 'lishi'), ('age', '18')])
#ImmutableMultiDict:类字典对象、可以出现重复的key
print(request.args)
#参数取值
print(request.args.get('name'))
print(request.args.getlist('name'))
# print(request.args.get['name'], request.args['age'])
#post请求
print(request.form) #打印post请求过来的参数
print(request.form.get('name')) #取值
#cookie
print(request.cookies) # 打印cookie
#不常用
#获取请求的路径
#请求:http://127.0.0.1:5000/request/?name=zhangsan&&name=lishi&age=18
print(request.path) # /request/
print(request.url) # http://127.0.0.1:5000/request/?name=zhangsan&&name=lishi&age=18
print(request.full_path) # /request/?name=zhangsan&&name=lishi&age=18
print(request.base_url) # http://127.0.0.1:5000/request/
print(request.host_url) # 127.0.0.1
print(request.remote_addr) # 127.0.0.1:5000,客户端的ip
#请求头
print(request.headers) # 请求头
print(request.files) # 上传的文件
print(request.user_agent) # 用户代理、浏览器信息
return 'get_request'