代码之家  ›  专栏  ›  技术社区  ›  Case

从Ruby成功调用WCF服务?有人吗?

  •  3
  • Case  · 技术社区  · 16 年前

    我得到的错误是:

    无法处理消息,因为 内容类型“text/xml;charset=UTF-8” 不是预期的类型 'application/soap+xml;charset=utf-8'。'application/soap+xml;charset=utf-8'。

    由于EndpointDispatcher处的ContractFilter不匹配,无法在接收器处处理具有操作“”的消息。这可能是因为契约不匹配(发送方和接收方之间的操作不匹配)或者发送方和接收方之间的绑定/安全不匹配。检查发送方和接收方是否具有相同的契约和相同的绑定(包括安全要求,例如消息、传输、无)。(SOAP::FaultError)

    现在,这个错误让我感到困惑,因为我看不到在任何Ruby库中配置端点的任何方法。有人知道吗?

    是否有人成功地从Ruby?'application/soap+xml调用了WCF服务;字符集=utf-8'。

    3 回复  |  直到 16 年前
        1
  •  3
  •   Case    16 年前

    请注意,在我换了衣服之后,我就开始工作了web.config文件对于basichttppbinding的服务,Savon能够发送和接收消息。只有soap4r无法静止并抛出操作“”错误。

        2
  •  1
  •   Michael Baldry    16 年前

    我最终嗅探了.net客户端发出的请求,然后构建了具有.to\uXML方法的对象,获取了一个xml生成器对象并添加了它自己的东西。。

    非常手动的方式来做它,必须添加更多的每一种方法,我需要使用,但至少它的工作!

    与我共事的其他一些人成功地使用了JRuby和Axis。我远离这个,因为我想要一个纯红宝石的解决方案。

        3
  •  1
  •   ktambascio    13 年前

    我的wcfweb服务遇到了与Savon相同的问题。内容错误是因为您的服务需要SOAP1.2,但默认情况下,Savon将请求作为SOAP1.1发送。

    我在电脑上找到了这个方法 Savon website :

    response = client.request :get_user do
      soap.version = 2
    end