我想连接到 Web 服务 (WS)。但是,必须提供 cookie 才能与此 Web 服务交互。
到目前为止,这是我所拥有的:
String requiredCookieName = "requiredCookieName";
String requiredCookieValue = getRequiredCookieValue();
// Prepare SOAP message
SOAPMessage soapMessage = MessageFactory.newInstance().createMessage();
soapMessage.getMimeHeaders().addHeader("SOAPAction", getSoapAction());
soapMessage.saveChanges();
// Send SOAP message
SOAPConnection soapConnection = buildSoapConnection();
SOAPBody soapBody = soapConnection
// How to add required cookie here before calling WS?
.call(soapMessage, getOperationLocation("operationName"))
.getSOAPBody();
// Process response...
如何将所需的 cookie 添加到 WS 的底层 HTTP 请求中?
最佳答案
您可以通过将相应的 Cookie
HTTP header 添加到消息中来实现此目的(与您已经对 SOAPAction
header 所做的操作完全相同):
soapMessage.getMimeHeaders().addHeader(
"Cookie", requiredCookieName + "=" + requiredCookieValue);
关于java - 如何在 Java 中手动将 cookie 添加到 Web 服务调用中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41239732/