werkzeug Request
WSGI application接收两个参数:“environment”和“start_response”。
request
class 可以包装environ
,方便对environ
进行操作
from werkzeug.wrappers import Request, Responsedef application(environ, start_response):request = Request(environ)response = Response("Hello %s!" % request.args.get('name', 'World!'))return response(environ, start_response)
也可以写成
from werkzeug.wrappers import Request, Response@Request.application
def application(request):return Response("Hello %s!" % request.args.get('name', 'World!'))
使用request
class需要遵守以下规则:
1.request
object是不可变的,不要试图改变他的属性
2.request
object可以在线程中共享,但不是线程安全的,如果想在多线程中获得它,使用locks
3.不可以序列化request
object
class werkzeug.wrappers.BaseRequest(environ, populate_request=True, shallow=False)
属性 | 描述 |
---|---|
environ | |
shallow | |
_get_file_stream | |
access_route | |
classmethod application(f) | |
args | |
base_url | |
charset = ‘utf-8’ | |
close() | |
cookies | |
data | |
dict_storage_class | |
disable_data_descriptor = False | |
encoding_errors = ‘replace’ | |
files | |
form | |
form_data_parser_class | |
classmethod from_values(*args, **kwargs) | |
full_path | |
get_data(cache=True, as_text=False, parse_form_data=False) | |
headers | |
host | |
host_url | |
is_multiprocess |
参考:
https://werkzeug.palletsprojects.com/en/1.0.x/wrappers/?highlight=request#base-wrappers
werkzeug Request相关推荐
- werkzeug源码解析 Request Response
werkzeug源码解析 Request Response datastructures datastructures.py单元定义了基本类型 为了实现不可修改,定义了一系列Immutable类,通过 ...
- Flask一:安装初始,return方式,Request,Jinja2,session
一:安装和初始 1.Flask 安装 + 启动from flask import Flaskapp = Flask(__name__) # 实例化flask对象 # __name__ 多app应用,分 ...
- Werkzeug 与 WSGI 介绍
Werkzeug 是一个WSGI工具包,也可以作为一个Web框架的底层库. WSGI 在介绍Werkzeug之前,先介绍一下 WSGI(Python Web Server Gateway Interf ...
- Python Web 框架工具包 werkzeug
一.什么是werkzeug werkzeug 官方的介绍说是一个 WSGI 工具包,不是一个web服务器,也不是一个web框架,它可以作为一个 Web 框架的底层库,因为它封装好了很多 Web 框架的 ...
- Werkzeug 教程
欢迎来到 Werkzeug 教程,我们将会实现一个类似 TinyURL 的网站来储存 URLS.我们 将会使用的库有模板引擎 Jinja 2,数据层支持 redis ,当然还有 WSGI 协议层 We ...
- websocket工作原理
websocket工作原理 websocket是什么? websocket是一套类似于http的协议. 扩展: http协议:\r\n分割.请求头和请求体\r\n分割.无状态.短连接. {'GATEW ...
- Flask中的请求上下文和应用上下文
在Flask中处理请求时,应用会生成一个"请求上下文"对象.整个请求的处理过程,都会在这个上下文对象中进行.这保证了请求的处理过程不被干扰.处理请求的具体代码如下: def wsg ...
- python--Websocket实现, 加密 sha1,base64
需要用到gevent-websocket包,这里我们用下图这个 一.websocket简单实现 ep1.py from geventwebsocket.handler import WebSocket ...
- session 的 源码
session 的 源码 1.session 和 cookie 的 区别: 答: cookie 它是保存在浏览器的键值对. session 它是保存在服务端的键值对. 它 依赖cookie 存在. ...
最新文章
- 推荐IronPython开发IDE: IronPython Studio
- 小甲鱼python视频解读_小甲鱼python视频弟十二讲(关于字符串的方法及注释下)...
- Java黑皮书课后题第9章:**9.12(几何:交点)假设两条线段相交。第一条线段的两个端点是(x1, y1)和(x2, y2),第二条线段的两个端点是(x3, y3)和(x4, y4)
- 时间转换python_Python 日期与时间转换的方法
- 1.8 其他正则化方法
- Tomcat学习总结(17)—— Tomcat生产环境中域名访问和连接MySQL
- 项目如何开始:怎样和客户一起搞定需求
- pythonqt项目_Qt项目之高亮关键字Python编辑器实现
- 解决“ValueError: Stop argument for islice() must be None or an integer: 0 <= x <= sys.maxsize.”
- 安卓蓝牙键盘按键映射_键盘按键映射器安卓版
- PS 矩形工具的使用
- 【PC】如何让程序开机自启动/如何打开开机自启动文件夹
- 甘肃省庆阳市谷歌卫星地图下载
- (二)PositionRank: An Unsupervised Approach to Keyphrase Extractionfrom Scholarly Documents解读一
- 牛客IOI周赛20-普及组
- 解决error mounted is not defined no-undef
- 0基础转行软件测试从哪开始学,怎么有效学?
- Docplex入门(1)——线性规划
- 2021年化工自动化控制仪表考试报名及化工自动化控制仪表新版试题
- 国外最大的购物搜索/比较购物网站
热门文章
- (篇六)C语言求自首数、完数、亲密数
- 计算机曝光模式有哪些,摄影:单反相机中P、A、S、M四种曝光模式的用法详解 -电脑资料...
- 微课|Python列表、字典、集合、字符串对象常用方法串讲
- Python+psutil获取本机所有联网的应用程序信息
- 微课|中学生可以这样学Python(7.4节):属性
- python标准库math用法精要
- mysql序列 mybatis_MySQL实现序列(Sequence)效果以及在Mybatis中如何使用这种策略
- echart饼图标签重叠_怎么让ECharts饼图的label标签不重叠?
- 计算机工程与应用 格式,计算机工程与应用模板.doc
- 数据流图软件_软件工程分析设计图库目录