我正在使用REXML来解析通过POST发送的一些XML数据。使用“&”正确格式化XML格式发送为“&
”。但是,当我尝试解析它时,我遇到了问题,例如&
成为&amp;并抛出一个错误。我用gsub修复了,但现在它说#<REXML::ParseException: Missing end tag for 'br'
任何人都有经验解析通过Rails上的POST发送的XML吗?
def parse
xml = params["xml_data"]
xml = xml.gsub(/&/,"&")
doc, posts = REXML::Document.new(xml), []
end
答案 0 :(得分:1)
问题很可能是你发送html而不是xml而html是无效的xml - 不要尝试使用regexp或xml处理器进行解析。在您的情况下,您可能遇到过&lt; br&gt;标签(不是&lt; br /&gt;注意) - 对于html来说非常好。尝试使用Nokogiri gem进行html解析