必须在上下文环境中才有数据,其本身是一个LocalProxy,一般是视图函数内部中调用。

form

一个字典,存储请求提交的所有表单字段

args

一个字典,存储通过 URL 查询字符串传递的所有参数

values

一个字典,form 和 args 的合集

cookies

一个字典,存储请求的所有 cookie

headers

一个字典,存储请求的所有 HTTP 首部

files

一个字典,存储请求上传的所有文件

get_data()

返回请求主体缓冲的数据

get_json()

返回一个 Python 字典,包含解析请求主体后得到的 JSON

blueprint

处理请求的 Flask 蓝本的名称

endpoint

处理请求的 Flask 端点的名称;Flask 把视图函数的名称用作路由端点的名称

method

HTTP 请求方法,例如 GET 或 POST

scheme

URL 方案(http 或 https)

is_secure()

通过安全的连接(HTTPS)发送请求时返回 True

host

请求定义的主机名,如果客户端定义了端口号,还包括端口号

path

URL 的路径部分

query_string

URL 的查询字符串部分,返回原始二进制值

full_path

URL 的路径和查询字符串部分

url

客户端请求的完整 URL

base_url

同 url,但没有查询字符串部分

remote_addr

客户端的 IP 地址

environ

请求的原始 WSGI 环境字典

session

request_context

如果想独立使用请求上下文,需要借助request_context
例如:

  1. from flask import Flask,request
  2. app = Flask('')
  3. # 这里的environ字典中的除了name其他都是必填字段
  4. environ = {'wsgi.version':(1,0),'SERVER_NAME':'test','wsgi.url_scheme':'test_schema','SERVER_PORT':'8899','REQUEST_METHOD':'POST','PATH_INFO':'Haha','name':'Juha'}
  5. with app.request_context(environ):
  6. print(request.path)