2011-10-26 44 views
0

我正在使用REXML解析通过POST发送的一些XML数据。 XML被正确发送,格式为“&”,作为“&amp;”发送。但是,当我尝试解析它时,我遇到了如&amp;变成&并且出现错误的问题。我使用gsub修复,但现在它说#<REXML::ParseException: Missing end tag for 'br'使用Rails解析XML POST数据

任何人都有解析通过在Rails上通过POST发送的XML的经验吗?

def parse 
xml = params["xml_data"] 

xml = xml.gsub(/&/,"&amp;") 

doc, posts = REXML::Document.new(xml), [] 
end 

回答

1

最有可能的问题是,你发送HTML istead XML和HTML是不是有效的XML - 不要试图用正则表达式或XML处理器为其解析。在你的情况下,你可能遇到了<br>标签(不是< br/>注意) - 对于html来说,这完全可以。尝试使用Nokogiri宝石的HTML解析

+0

是的,我刚刚发现了Nokogiri。挺好的。兴奋地尝试一下。我只是安装了宝石,并将它添加到我的gem文件中,但没有获得这样的文件加载 - nokogiri ...现在要了解为什么它不会加载nokogiri宝石! –