num*_*soz 0 python soap wsdl soapui zeep
我正在使用 SOAP API 来获取带有应该返回的 cookie 的身份验证密钥。
from zeep import Client
client = Client("AuthenticationService.xml")
result = client.service.ValidateUser(username, password, "")
result
Run Code Online (Sandbox Code Playgroud)
然而,结果是,我得到了 True 布尔值,但没有包含身份验证密钥的 Cookie。
从下图中,您可以看到使用 SoapUI 的同一请求返回一个 cookie。我想知道如何在 Python 中做到这一点。
小智 5
为了能够处理cookie
,我们必须使用requests.Session
for transport
。
因此,一个简单的用例对您来说如下所示:
from zeep import Client
from requests import Session
from zeep.transports import Transport
session = Session()
# disable TLS verification
session.verify = False
transport = Transport(session=session)
client = Client("AuthenticationService.xml", transport=transport)
result = client.service.ValidateUser(username, password, "")
# then check cookie
client.transport.session.cookies
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助。