Werkzeug库[通俗易懂]

Werkzeug库[通俗易懂]简介Werkzeug是一个Python写成的WSGI工具集。它遵循WSGI规范,对服务器和Web应用之间的“中间层”进行了开发,衍生出一系列非常有用的Web服务底层模块。关于Werkzeug功能的最简单的一个例子如下:12345678910fromwerkzeug.wrappersimportRequest,…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新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主要做了下面几件事情:

  1. 根据服务器和WSGI服务器产生的environ环境信息,封装一个Request实例,这个实例包含请求的所有信息;

  2. Web应用根据封装的Request实例信息,产生一个Response实例(上述例子只是输出一段字符串)。这个Response实例是一个可调用的WSGI应用;

  3. 上一步骤产生的可调用应用对象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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux系统如何修改用户名_两种方案对比报告

    linux系统如何修改用户名_两种方案对比报告在安装系统的时候,经常会无意识的随便起个用户名,后面如果发现该用户名不好或因为环境需要须重起个用户名,经过查找资料和亲自测试发现有两种方案可选:手动修改和使用usermod等命令自动修改。方案一:手动修改各个关联用户文件以root身份登录系统文件的修改需要root权限,这里不管是原root用户登录还是普通用户切换到root下都可以,只要有修改权限就行。修改/etc/passwd这个文件中的用户名部

    2022年9月13日
    2
  • 更改iis上传文件的默认大小

    更改iis上传文件的默认大小

    2021年8月14日
    57
  • Android点击button弹出ProgressDialog,响应结束后ProgressDialog消失

    Android点击button弹出ProgressDialog,响应结束后ProgressDialog消失ProgressDialog与Handler结合使用,事件响应前弹出dialog,事件响应结束后dialog自动消失。

    2022年7月14日
    20
  • Binder 机制「建议收藏」

    Binder是Android系统进程间通信(IPC:InternetProcessConnection)方式之一。Linux已经拥有的IPC手段包括:管道(Pipe)、信号(Signal)、跟踪(Trace)、插口(Socket)、报文队列(Message)、共享内存(ShareMemory)和信号量(Semaphore)等。本文详细分析Binder作为Android主要IPC方式的优势。一、概述基于Client-Server的通信方式,广泛应用于从互联网和数据库访问

    2022年4月7日
    105
  • vscode新建html文件并快速生成标准的html代码_vscode怎么开始写代码

    vscode新建html文件并快速生成标准的html代码_vscode怎么开始写代码在vscode里新建html文件,总是要一行一行的写标准的html代码;而DW新建html文件,都会自动生成标准的html代码;所以在使用vscode是总觉得很麻烦,  各种百度终于找到了使用的方法(很好用的一个快捷键):步骤:一、先输入一个!      二、点击tab键      三、自动生成标准的html代码(见图)       …

    2022年8月21日
    7
  • 普通最小二乘法的推导证明

    普通最小二乘法的推导证明最小二乘法1、什么是最小二乘思想?​简单地说,最小二乘的思想就是要使得观测点和估计点的距离的平方和达到最小.这里的“二乘”指的是用平方来度量观测点与估计点的远近(在古汉语中“平方”称为“二乘”),“最小”指的是参数的估计值要保证各个观测点与估计点的距离的平方和达到最小。从这个上也可以看出,最小二乘也可用于拟合数据模型。2.最小二乘法推导​我们以最简单的一元线性

    2022年5月17日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号