大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
简介
Werkzeug是一个Python写成的WSGI工具集。它遵循WSGI规范,对服务器和Web应用之间的“中间层”进行了开发,衍生出一系列非常有用的Web服务底层模块。关于Werkzeug功能的最简单的一个例子如下:
|
1
2
3
4
5
6
7
8
9
10
|
from werkzeug.wrappers import Request, Response
def application(environ, start_response):
request = Request(environ)
response = Response(
“Hello %s!” % request.args.get(‘name’, ‘World!’))
return response(environ, start_response)
if __name__ == ‘__main__’:
from werkzeug.serving import run_simple
run_simple(
‘localhost’, 4000, application) |
运行上面的例子,当在浏览器输入http://localhost:4000/就会向本地的服务器发出一个请求。在请求的过程中,werkzeug主要做了下面几件事情:
-
根据服务器和WSGI服务器产生的
environ环境信息,封装一个Request实例,这个实例包含请求的所有信息; -
Web应用根据封装的
Request实例信息,产生一个Response实例(上述例子只是输出一段字符串)。这个Response实例是一个可调用的WSGI应用; -
上一步骤产生的可调用应用对象
response调用response(environ, start_response)生成响应信息并发回客户端。调用函数是由WSGI规范规定的。
以上过程很好地将服务器和web应用分离开来:服务器不用考虑请求信息怎么被解析给web应用,以及后续怎么和web应用通信;web应用也不用考虑怎么将响应信息返回给服务器。服务器要做的只是提供web应用所需的请求信息,web应用提供的也只是响应信息,中间的处理过程werkzeug可以帮助完成。
模块
werkzeug库主要的模块有:
转自: http://fanchunke.me/Flask/Werkzeug%E5%BA%93%E7%AE%80%E4%BB%8B/
转载于:https://www.cnblogs.com/JAYWX/articles/8626405.html
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/188987.html原文链接:https://javaforall.net
