我正在使用rest-client從其他網站返回XML並試圖使用Nokogiri來解析它。 XML看起來像這樣:使用Nokogiri解析XML
<?xml version="1.0" encoding="UTF-8"?> ...
<MXAUTOKESet>
<AUTOKEY>
<AUTOKEYID>27</AUTOKEYID>
<AUTOKEYNAME>WORKORDERNUM</AUTOKEYNAME>
<ORGID>xxxx</ORGID>
<PREFIX>12-</PREFIX>
<SEED>38979</SEED>
...
我想提取「PREFIX」和「SEED」數字。
我的看法代碼如下所示:
<% xml_data = RestClient.get "URL (sorry can't display it in this question)" %>
<%= xml_doc = Nokogiri::XML(xml_data)%>
第二行顯示在頁面上返回的XML,所以,我都知道了,客戶端的工作,但我不知道如何訪問解析XML。
UPDATE1:
我能得到creationDateTime
出使用下面的XML頭的。但是,我還是不能讓種子值:
<%= doc = Nokogiri::XML(xml_data)%>
<h4>Creation Date</h4>
<% root = doc.root %>
<%= root["creationDateTime"] %>
<h4>SEED</h4>
<%= seed = root.xpath("SEED").text %>
或
<%= seed = doc.xpath("//SEED").inner_text %>
請不要把所有這些邏輯放在你的視野中。 – 2013-02-27 02:03:26
馬克 - 它應該放在控制器還是模型中? (對不起 - 我是新手) – Reddirt 2013-02-27 15:18:26
@Reddirt控制器。從控制器中的XML中提取所需的部分,然後將它們放在視圖中要查看它們的位置。 – Phrogz 2013-02-27 15:26:51