3
我必须使用具有多个服务的API。所有这些都需要下面认证的JSESSION cookie。但是,当我调用下一个服务时,它不保存cookie并拒绝它们。从SUDS中的SOAP响应中提取Cookie
from suds.client import Client
url = 'http://example/ws/Authenticate?wsdl'
client = Client(url)
result = client.service.connect(username='admin', password='admin')
print client.options.transport.cookiejar
>>> <cookielib.CookieJar[<Cookie JSESSIONID=XXXXXXXXXX for localhost.local/Service/>]>
我相信方式得到它保持这个cookie是将其解压,然后将它作为格式自定义标题: -
url = 'http://example/ws/dostuffnowloggedin?wsdl'
client2 = Client(url, headers= { 'Cookie': 'JSESSIONID=value'})
但我想不出怎么做。我已阅读了SUDS文档,URL2LIB和Cookiejar python文档,查看了在Reddit上查询堆栈&。这是我在Stack上提出的第一个问题,我试图让它变得有意义和具体,但是如果我已经提交了一个人造标签,告诉我,我会尽我所能来纠正它。