3

在 python 中处理一个启动 http 请求并有一个小型 Web 服务器的辅助项目。这让我开始思考——似乎每个 python 微框架都有自己的模型来访问 http 请求的属性(例如,您可以用来获取查询字符串参数、标头等的底层请求对象以及用于设置的底层响应对象状态码、响应头等)。它们都允许您访问相同的数据,并且它们都在重新发明轮子。

是否有任何使用流行请求Request库中的和对象而不是拥有自己的实现的微框架?似乎请求库正在成为在 python 中执行 http 请求的规范方式,因此这将使框架特别小。在制作本质上将其他服务粘合在一起的应用程序时,它也会很酷,因为转发/包装请求将是微不足道的。您可以只更改传入请求的属性并调用以转发请求(是的,对于在网络服务器级别进行的简单转发更有意义,但您明白了)。Response.url.prepare()

或者如果没有任何框架特别这样做,是否有类似的好处,即传入的http请求对象也可以作为http客户端工作?

编辑:想指出这就是 http Request 对象在 Go 中的工作方式,这在一定程度上激发了我的问题。来自net/http库“一个请求代表一个由服务器接收或由客户端发送的 HTTP 请求。”

4

1 回答 1

3

Flask基于Werkzeug。Werkzeug 本身正在使用Request本身正在使用BaseRequest。但这不是Requests库。

请注意,有一个计划使用 Requests 和 Werkzeug创建一个httpcore 库,但这似乎已经停止。也就是说,这两个项目都在启动。

有些人使用 Requests 在他们的应用程序中修改了 Flask

于 2013-01-22T09:36:11.990 回答