获取XML文件POST请求以使用Ruby on Rails进行解析

Bri*_*ich 9 ruby xml post ruby-on-rails nokogiri

我有一个客户端正在为我的网站发送XML进行解析.我通常是一个PHP人,并且懂得如何通过PHP解析它,但我不知道如何用Ruby做同样的事情.客户说他们要将他们的XML文件发布到我的服务器(即下面的代码)

curl -X POST -H "Content-Type: text/xml" -d "@/path/to/file.xml" my-web-address.com/parser
Run Code Online (Sandbox Code Playgroud)

然后解析器处理程序页面需要能够检测到文件已发送给它,并解析它.这是否意味着Ruby只是查找任何POST请求?我怎么称呼POST内容(XML文件)变成一个变量来搞乱它?

我正在使用Nokogiri来解析XML.

doc  = Nokogiri::XML(xml)
Run Code Online (Sandbox Code Playgroud)

欣赏任何见解!

tok*_*and 12

请注意,您已经将XML内容params作为哈希获取.但如果你更喜欢使用Nokogiri:

def some_action
  doc = Nokogiri::XML(request.body.read) # or Nokogiri::XML.fragment
  ...
end
Run Code Online (Sandbox Code Playgroud)