ruby + Nokogiri : How to create XML node with attribute=value?

标签 ruby xml nokogiri

我必须使用 XML 向 API 发出请求:

http://production.shippingapis.com/ShippingAPITest.dll?API=CityStateLookup&XML=<CityStateLookupRequest%20USERID="xxxxxxxxxxxx"> <ZipCode ID= "0"> <Zip5>90210</Zip5> </ZipCode> </CityStateLookupRequest>

我正在尝试使用 Nokogiri 来实现这一点,但我不知道如何添加 USERID="xxxx.."部分。这是我所拥有的(不完整):

def xml_for_initial_request
  builder = Nokogiri::XML::Builder.new do |xml|
    xml.CityStateLookupRequest.USERIDhowdoIsetthevalue?? {
      xml.Zip {
        xml.Zip5 '90210'
      }
    }
  end
end

最佳答案

我会这样做:

require 'nokogiri'

builder = Nokogiri::XML::Builder.new do |xml|
    xml.CityStateLookupRequest('userid' => 'xxxxxx' ) {
      xml.zip("id" => '10'){
        xml.Zip5 '90210'
      }
    }
end

puts builder.to_xml
# >> <?xml version="1.0"?>
# >> <CityStateLookupRequest userid="xxxxxx">
# >>   <zip id="10">
# >>     <Zip5>90210</Zip5>
# >>   </zip>
# >> </CityStateLookupRequest>

关于 ruby + Nokogiri : How to create XML node with attribute=value?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21195830/

相关文章:

ruby-on-rails - 在 Ruby on Rails 中使用迁移

ruby-on-rails - 如何在 Ruby on Rails 中实现由 JSF 2.0 (Primefaces) 驱动的 UI 魔法

android - Appium:Ruby: 在 gem 中加载错误

python - 功能字段,将日期字段显示为文本 - OpenERP v7

ruby - 如何使用 Nokogiri 获取 <p> 标签父类名称?

ruby-on-rails - 如何使用 nokogiri 生成器生成 xml

ruby-on-rails - 如何在 Rails 中测试自定义助手?

sql-server - 获取 xml 作为 exec 存储过程的结果

ruby-on-rails - Nokogiri XML 和循环不起作用

xml - Groovy 使用 XMLHolder 迭代节点