【问题标题】:Assembling SOAP Header manually with Savon使用 Savon 手动组装 SOAP Header
【发布时间】:2011-06-28 15:42:03
【问题描述】:

在使用 Savon 提交 SOAP 请求时,我一直在处理“soap 消息头不正确”错误消息。

我将 Savon 生成的完全相同的 xml 复制/粘贴到 SOAPUI 中,我没有收到该错误,但我得到了预期的响应。

所以,由于我厌倦了尝试不同的东西,我想在没有 Savon 帮助的情况下组装自己的标题。

我想做的是这样的:

soap.header = "<wbs:Session><wbs:SessionId></wbs:SessionId><wbs:SequenceNumber></wbs:SequenceNumber></wbs:Session>"

但是我从 Savon 收到此错误:

无法将符号转换为字符串

为什么?

提前谢谢你。

【问题讨论】:

    标签: ruby-on-rails soap savon


    【解决方案1】:

    这可能是因为你没有设置任何值。

    当我返回一个只包含一个自定义对象的哈希时,我收到了这个错误,因为它试图访问已自动删除的部分哈希。 (它为我删除了不必要的哈希层:@)

    【讨论】:

      【解决方案2】:

      我相信标题只会接受一个哈希 - 来自 savon.rb 页面:

      Besides the body element, SOAP requests can also contain a header with
      additional information. Savon sees this header as just another Hash following
      the same conventions as the SOAP body Hash.
      
      soap.header = { "SecretKey" => "secret" }
      

      【讨论】:

        猜你喜欢
        • 2016-10-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多