我正在构建一个连接到dynadot xml api的简单域名应用。我使用httparty使用下面的代码向api发出请求
def index
reqd = HTTParty.get("https://api.dynadot.com/api3.xml?key=xxxxx&command=search&domain0=mydomain.com&domain1=mydomain.net").body
puts reqd
end
我得到以下输出
<Results>
<SearchResponse><SearchHeader>
<SuccessCode>0</SuccessCode>
<DomainName>mydomain.com</DomainName>
<Status>success</Status>
<Available>no</Available>
</SearchHeader></SearchResponse>
<SearchResponse><SearchHeader>
<SuccessCode>0</SuccessCode>
<DomainName>mydomain.net</DomainName>
<Status>success</Status>
<Available>no</Available>
</SearchHeader></SearchResponse></Results>
是否可以在rails中传递它并将其表示为一个数组,我可以循环遍历所有域名并将其显示为包含可用或不可用的列表以及转换为html时旁边的域名。如果可能的话,我想知道如何使用代码示例或解释。谢谢。
答案 0 :(得分:2)
这是一种简单的方法:
# require 'active_support/core_ext/hash/conversions'
hash = Hash.from_xml(your_xml)
your_xml
变量是一个类似您粘贴的字符串。您也可以使用Nokogiri解析XML,然后使用#to_s
并将其作为参数传递给Hash#from_xml