2014-10-06 58 views
0

所以我正在嘗試使用JIRA的REST API來完成我們即將發佈的發佈計劃。從他們的API,我可以得到返回的JSON所見如下:Ruby-迭代解析的json,沒有哈希名稱

[{ 
"self": "https://jira.company.com/rest/api/2/version/15701", 
"id": "15701", 
"description": "First release", 
"name": "1.4.3", 
"archived": false, 
"released": true, 
"releaseDate": "2013-02-28", 
"userReleaseDate": "28/Feb/13", 
"projectId": 10005 
}, 
{ 
"self": "https://jira.company.com/rest/api/2/version/15685", 
"id": "15685", 
"description": "Second release", 
"name": "1.4.5", 
"archived": false, 
"released": true, 
"releaseDate": "2013-03-11", 
"userReleaseDate": "11/Mar/13", 
"projectId": 10005 
} 
] 

所以我看了看其他的答案在網站上,我不能完全弄清楚的時候我有沒有識別碼的塊。例如,這個問題,reddit的api命名每個json對象,而JIRA不會。 Ruby - iterate over parsed JSON

我試着沿

json[''].each do |release| 
    puts release['description'] 
end 

行的東西,但是這正是我有點失落。我把['']放在那裏,因爲沒有鑰匙。我對JSON相當陌生,所以我的術語也可能不在這裏...

+0

什麼'json.each做|發佈|'? – MrYoshiji 2014-10-06 18:41:34

+0

發誓我試過,但似乎工作。 Blah非常感謝您的幫助!我覺得愚蠢哈哈 – Danny 2014-10-06 18:43:54

回答

2

當您解析該JSON字符串時,您將得到一個Array對象。

如果你寫了下面的代碼:

json.each do |release| 
    puts release['self'] 
end 

你應該看到這樣的輸出:

https://jira.company.com/rest/api/2/version/15685 
https://jira.company.com/rest/api/2/version/15701