首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用洗出gem进行SOAP请求时,将XML参数映射到ruby类

使用洗出gem进行SOAP请求时,将XML参数映射到ruby类
EN

Stack Overflow用户
提问于 2018-02-20 18:23:23
回答 1查看 146关注 0票数 0

我正在使用wash-out gem (https://github.com/inossidabile/wash_out)来公开SOAP服务。

洗出文档的示例用法如下:

代码语言:javascript
复制
# Params from XML attributes;
  # e.g. for a request to the 'AddCircle' action:
  #   <soapenv:Envelope>
  #     <soapenv:Body>
  #       <AddCircle>
  #         <Circle radius="5.0">
  #           <Center x="10" y="12" />
  #         </Circle>
  #       </AddCircle>
  #     </soapenv:Body>
  #   </soapenv:Envelope>
  soap_action "AddCircle",
              :args   => { :circle => { :center => { :@x => :integer,
                                                     :@y => :integer },
                                        :@radius => :double } },
              :return => nil, # [] for wash_out below 0.3.0
              :to     => :add_circle
  def add_circle
    circle = params[:circle]
    Circle.new(circle[:center][:x], circle[:center][:y], circle[:radius])

    render :soap => nil
  end

但是我的XML请求有许多嵌套的参数,并且我不想为每个XML属性定义映射(:args)。有没有办法将XML请求(XSD)映射到ruby散列到soap操作所需的格式中:args。

EN

回答 1

Stack Overflow用户

发布于 2018-02-20 22:16:34

如果不将每个嵌套属性逐个映射到ruby对象,我不知道有什么方法可以做到这一点,但是您可以尝试使用xml-mapping gem并尝试测试您想要的东西。

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

https://stackoverflow.com/questions/48882977

复制
相关文章

相似问题

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