我必须使用 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/