我有另一个rails应用程序提供RESTful JSON API。我可以通过下面的curl请求测试响应(你也可以看到它返回的第一个项目的例子)。
我可以弄清楚如何从较大的响应中提取某些项目。我只是不确定我应该如何在rails应用程序上提供响应,以便将其呈现给客户端。
我认为我需要保存这是某种类。我可以使用卷曲吗?我对铁轨非常环保,并且非常希望得到任何帮助。
谢谢!
curl "http://api.foobar.com/stuff/stuff_name/catalog_items.json" -H "X-Api-Key: georgesbush"
返回一组很好的JSON数据。
{
"data": {
"catalog_items": [
{
"current_price": "9999.0",
"close_date": "2013-05-14T16:08:00-04:00",
"open_date": "2013-04-24T11:00:00-04:00",
"stuff_count": 82,
"minimum_price": "590000.0",
"id": 337478,
"estimated_price": "50000.0",
"name": "This is a really cool name",
"current_winner_id": 696969,
"images": [
{
"thumb_url": "http://foobar.com/images/93695/thumb.png?1365714300",
"detail_url": "http://foobar.com/images/93695/detail.png?1365714300",
"position": 1
},
{
"thumb_url": "http://foobar.com/images/95090/thumb.jpg?1366813823",
"detail_url": "http://foobar.com/images/95090/detail.jpg?1366813823",
"position": 2
}
]
}
]
},
"pagination": {
"per_page": 1,
"page": 1,
"total_pages": 131,
"total_objects": 131
}
}
答案 0 :(得分:0)
我选择了红宝石路边图书馆,哇,太容易了。将curb添加到我的gem文件中,并将以下代码添加到我的控制器操作中:
http = Curl.get("http://api.foobar.com/stuff/stuff_name/catalog_items.json?per_page=1&page=1") do|http|
http.headers['X-Api-Key'] = 'georgebush'
end
foobar = http.body_str
@foobar = ActiveSupport::JSON.decode(foobar ).symbolize_keys