Twisted HTTP客户端

16

我需要一个关于Twisted HTTP客户端的用法示例。

在阅读了优秀的关于Twisted内部原理的博客文章之后,我明白了"工厂"和"协议"组件的作用,但我不清楚如何在整个客户端流程中引入"请求(Request)"。

更具体地说,我需要使用Twisted执行HTTP GET和POST请求到远程服务器。

更新:在irc #twisted / #python的讨论后,似乎twisted.web2正逐渐消失,取而代之的是加强twisted.web的功能,例如Agent。

3个回答

18

从 Twisted 9.0 开始,实际上有两个可用的 HTTP 客户端。旧的客户端具有许多功能,例如自动跟随重定向、解释 cookie 头等。你可以在此处找到其使用示例:

http://twistedmatrix.com/documents/current/web/examples/

(getpage.pydlpage.py)

不幸的是,旧客户端提供的接口会使许多常见任务变得困难。例如,使用 getPage,你不能检查任意响应头。

新的 HTTP 客户端还没有旧客户端那么丰富功能,但它提供了一个旨在消除 getPage 限制的接口。同时也更易于扩展和定制。您可以在此处找到一个描述其用法的文档:

http://twistedmatrix.com/documents/current/web/howto/client.html


太棒了!正是我需要的! - jldupont
1
...除非它只在9.0.0版本中可用...啊! - jldupont
5
你是否希望我们停止改进,这样新版本就不会包含任何有用的东西? :) - Glyph
1
有没有关于使用multipart/form-data内容类型发出POST请求的示例可用? - surtyaar
Agent 默认会遵循重定向吗? - Rudziankoŭ

2

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接