Python Twisted 框架 HTTP 客户端
我想用 Python 编写一个简单的 SSL HTTP 客户端,并且听说过 Twisted 框架。
我需要能够使用 REST 服务进行身份验证 - 所以我想我只需将用户名和密码发布到目标服务器即可。假设身份验证成功,客户端将收到一个 cookie。
基于 Twisted 构建的 HTTP 客户端是否会自动为每个后续请求重新发送 cookie 标头,还是我需要做一些特殊的事情?我以前从未使用过 Twisted。
谢谢
I want to write a simple SSL HTTP client in Python and have heard about the Twisted framework.
I need to be able to authenticate with a REST service - so I was thinking I'd just POST a user name and password to the target server. Assuming authentication is successful, the client will receive a cookie.
Will an HTTP client built on Twisted automatically resend the cookie header for each subsequent request, or do I need to do something special? I've never used Twisted before.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
“基于 Twisted 构建的 HTTP 客户端”将执行其构建的任何操作 - 就像构建在任何 Y 上的任何 X 都会执行其构建的任何操作一样。 :) 所以我可能会建议这不是您真正关心的问题的答案。
自 Twisted 11.1.0 起,twisted.web.client.CookieAgent< /a> 接受一个
cookieJar
参数,它有两件事:。 a href="http://twistedmatrix.com/documents/current/api/twisted.web.client.getPage.html" rel="nofollow noreferrer">twisted.web.client.getPage 接受
cookies
参数的行为类似。因此,如果您使用
CookieAgent
,那么 cookie 将被保留并随后续请求一起发送,从而提供您所需的身份验证行为。您还可以使用
getPage
做一些事情,但考虑到它即将到来的厄运,您可能不应该这样做。"an HTTP client built on Twisted" will do anything it is built to do - just like, presumably any X built on any Y will do whatever it was built to do. :) So I might suggest that this isn't the question you really care about the answer to.
Since Twisted 11.1.0, twisted.web.client.CookieAgent accepts a
cookieJar
argument which does two things:The soon-to-be-deprecated twisted.web.client.getPage accepts a
cookies
argument behaves similarly.So if you use
CookieAgent
then the cookie will be persisted and sent with subsequent requests, providing the authentication behavior you're after.You could also do something with
getPage
but given its impending doom you probably shouldn't.