使用 xmlrpclib 和 cookie 获得不同的方式
如何在Python脚本中使用xmlrpclib连接到需要身份验证的xmlrpc服务,但不使用xmlrpc身份验证?
具体来说:
我使用Drupal 7.8,当然有服务模块,我会使用它的方法,如node.create..
Shibboleth SSO 需要对此服务器上的任何 HTTP 地址进行身份验证
我想使用服务,但无法通过 xmlrpc 登录 Shibboleth(我必须模拟常规的实时用户操作、解析 html 等)。
我设法在变量中准备好 cookie(登录成功)
现在我想通过 xmlrpclib.Server("...") 登录服务,但使用我以不同方式获得的 cookie。
可能吗?
How can I use xmlrpclib in Python script to connect to xmlrpc service that requires authentication, but without using xmlrpc authentication?
To be specific:
I use Drupal 7.8, there is of course service modules, I will use it's methods like node.create..
Authentication to any HTTP address on this server is required by Shibboleth SSO
I would like to use services but there is no way of loggin to Shibboleth by xmlrpc (I have to simulate regular living user actions, parse html etc).
I managed to get a cookie (login successful) ready in a variable
Now I want to login to services via xmlrpclib.Server("...") but using the cookie I obtained in different way.
Is it possible?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以修改来自 xmlrpclib 客户端的请求标头。创建一个自定义 Transport 类,并在其 send_host 方法(我认为?)中,您可以修改标头以添加您收到的 cookie。
编辑
检查这个
You can modify headers of a request from xmlrpclib client. Create a custom Transport class, and in its send_host method (I think?), you can modify the header to add the cookie you recieved.
EDIT
Check this