如何传递会话ID作为Soap请求的一部分?

蓝天

我调用身份验证请求以接收会话ID:

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <loginResponse xmlns="urn:company" xmlns:ns2="urn:company">
         <result>
            <sessionId>2342422342.dc8bizxsfapi03</sessionId>
            <msUntilPwdExpiration>2342342342342353452323</msUntilPwdExpiration>
         </result>
      </loginResponse>
   </S:Body>
</S:Envelope>

在我正在使用的Soap API的文档中指出:

A successful login will return a
session ID as an HTTP Cookie. This cookie must be passed back to all subsequent HTTP
Requests that invoke API operations in order to authenticate.

会话ID如何传递到下一个http请求,因为未对此进行描述?

我假设我需要将会话ID作为后续请求的一部分嵌入到XML标记中,但这应该在API中进行详细说明,或者是否可以使用标准机制?

彼得·G

您引用的API文档指出,该服务将在需要在任何后续请求上设置的响应上设置cookie。Cookie是通过HTTP标头而不是请求/响应的主体发送的,通常用于建立和维护会话。Web服务框架使用的基础HTTP客户端库可以很好地为您处理此问题,但是由于SOAP Web服务被设计为无状态的,因此通常必须询问该框架是否要维护会话。启用此功能后,它仅表示框架会将所有cookie发送回服务器发送给它的服务器,这正是您的SOAP API文档所要求的。

要在jax-ws中启用此功能,请在RequestContext上将BindingProvider.SESSION_MAINTAIN_PROPERTY设置为true。本文提供了一个示例和更多详细信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

通过Rest调用在json中传递fk作为DerivedIdentities的一部分

Netty单元测试:如何测试作为传递的ChannelHandlerContext一部分的Channel对象的调用?

如何传递运行时参数作为依赖关系解决方案的一部分?

NSNotificationCenter将结构作为UserInfo的一部分传递

如何在Paw中将文件作为多部分请求的一部分上载?

将cookie作为node.js请求的一部分传递

将对象作为ng-map标记的一部分传递

ASP.NET MVC传递参数作为url的一部分

如何在PowerShell中将参数作为-file的一部分传递

在作为回调一部分的嵌套函数中传递或访问变量

IdentityServer4:如何指定身份提供者作为授权请求的一部分?

如何在Flask中返回图像作为GET请求响应的一部分?

如何在angularJs 1.5中将$ scope变量作为组件的templateUrl的一部分传递?

如何在SwiftUI中将View()作为列表的一部分传递?

作为ROBOT框架的一部分传递--form数据

如何在PHP中将“&”作为字符串的一部分传递?

如何在余烬应用程序中将api密钥作为url的一部分传递

Grails发送版本作为PUT请求的一部分

将数组作为对象的一部分传递给Ajax调用

iTunes Connect:如何创建Bundle ID作为其他团队的一部分?

如何删除获取ID的一部分

Django-作为包含的一部分传递flatpage.title变量

如何(使用 RSpec)测试在 Rails 中发送的 HTTP 请求(作为单元测试的一部分)?

将 null 作为 vararg 参数的一部分从 Kotlin 传递给 Java 方法

Github - 在合并作为拉取请求的一部分后清理分支

作为开发拉取请求确认的一部分的完全自动化传递

将参数作为查询字符串或 url 的一部分传递?

函数未作为本机反应中道具的一部分传递

将 --form 文件作为 ROBOT 框架的一部分传递