使用Ruby on Rails解析JSON提要

时间:2011-09-28 15:39:21

标签: ruby-on-rails json

我知道这已被反复覆盖,但我无法理解如何开始。太多的JSON处女不知道发生了什么。

我正在尝试从远程服务器上的json feed获取一些数据到rails3应用程序。

我知道我需要json gem,但我不知道如何提取数据。

如果网址是这样的:

http://my-feed.com/json?res=service&s=table&table=User&start=0&max=5&sort=id&desc=true

如何从我的应用程序中获取该文件?

任何帮助,演练,教程赞赏

2 个答案:

答案 0 :(得分:3)

我真的不知道json gem - 它只处理解析吗?

如果是,您只需要提取信息,请尝试:

require 'open-uri'

begin
  json = open 'http://my-feed.com/json?res=service&s=table&table=User&start=0&max=5&sort=id&desc=true'
rescue
  # a multitude of HTTP-related errors can occur
end

json_string = json.read
# parse

答案 1 :(得分:3)

您将需要为资源发出HTTP请求,获取响应,并(可能)自己解析它 - 尽管我认为HTTParty将为您执行JSON解析。不过,HTTParty是我提出请求的建议。

如果您阅读自述文件,它会链接到examples of how to use HTTParty,您应该会发现它有用。基本示例包括如何发出get请求,检查标题和正文等。我相信您也可以使用response.parsed_response来获取HTTParty默认解析器的解析响应。还有一个使用您自己的自定义解析器的示例(如果您更喜欢另一个HTTParty)。