首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >citrus中的原始Soap请求/响应

citrus中的原始Soap请求/响应
EN

Stack Overflow用户
提问于 2018-08-24 21:19:47
回答 2查看 551关注 0票数 0

有没有办法在Citrus-framework中作为客户端或服务器发送原始soap请求和响应?我有一个soap请求的纯文本,并希望将其发送到服务器。然后,我想验证纯文本/ xml响应。

向您致敬,可疑的Dee

EN

回答 2

Stack Overflow用户

发布于 2018-08-25 05:45:21

你检查过这个sample project了吗?这是如何使用Citrus测试SOAP端点的一个很好的例子。基本上,当您发送带有soap()操作的XML时,它将被包装在SOAP信封中。Citrus在幕后处理所有SOAP技术细节,因此您可以保持测试的简单性。

但这也取决于您所说的“原始soap请求和响应”是什么意思。如果希望完全控制整个XML (SOAP信封+正文),可以使用标准的HTTP操作documentation & sample project。在使用此方法时,您需要了解一些事情:

  • 您必须发送完整的SOAP信封
  • 您需要根据SOAP版本设置正确的内容类型HTTP头
  • 如果您使用的是SOAP 1.1,还需要发送SOAPAction HTTP头
  • 没有架构验证
票数 0
EN

Stack Overflow用户

发布于 2018-09-03 15:50:30

默认情况下,Citrus将自动处理SOAP信封,并为您包装/展开有效负载主体。如果您希望保持SOAP信封的原样,以便自己提供整个SOAP消息,则需要在服务器端点上设置以下内容:

代码语言:javascript
复制
<citrus-ws:server id="soapServer"
    port="8080"
    auto-start="true"
    keep-soap-envelope="true"/>

使用keep-soap-envelope="true",您现在可以在处理此服务器端点上的消息时自行指定SOAP信封。在验证中,您现在可以提供整个SOAP信封作为预期的消息内容。

在客户端,您需要使用Citrus中的普通http-client组件,因为soap-client组件目前不能保留SOAP信封。

当然,也可以使用客户端和服务器端的核心http组件来发送和接收带有测试人员提供的SOAP信封的SOAP消息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52005398

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档