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'

 

posted @ 2024-07-07 00:12  little小新  阅读(1)  评论(0编辑  收藏  举报