2017-01-18 1 views
1

JSON에서 응답을 받았고 signal_events에 'signal'이 하나만 있는지 확인해야합니다. 저는 rspec에 Ruby를 사용하고 있습니다.JSON 응답에서 하나의 키만 가져 오는 것을 확인하는 방법은 무엇입니까?

"signal_events": [ 
{ 
    "id": "587e9ae969702d10bd5a0000", 
    "created_at": 1484692201, 
    "geo": { 
    "type": "Point", 
    "coordinates": [ 
     -153.45703125, 
     59.67773438 
    ] 
    }, 
    "expires_at": 1484778601, 
    "geohashes": [ 
    "bddg", 
    "bdeh" 
    ], 
    "signal": { 
    "id": "587e9ae969702d0911060000", 
    "created_at": 1484692201.24, 
    "expires_at": 1484778601.24, 
    "signal_at": 1484691607, 
    "source": "usgs", 
    "updated_at": 1484692144, 
    "magnitude": 2, 
    "radius": 6.36107901750268, 
    "event_name": "earthquake", 
    "tsunami": "no" 
    }, 
    "signal_type": "earthquake", 
    "centroid": { 
    "type": "Point", 
    "coordinates": [ 
     -153.45703125, 
     59.67773438 
    ] 
    }, 
    "location": { 
    "country": "United States", 
    "country_code": "US", 
    "city": "Kenai Peninsula Borough", 
    "region": "Kenai Peninsula Borough", 
    "region_code": "AK" 
    } 
}, 
+2

나는 당신이 당신의 질문에 주어진 답을 결코 받아들이지 않는 것을 보았습니다. 잠시 질문을하고 질문을 해결할 때 최선의 답을 수락하십시오. 이 방법으로 커뮤니티에 문제가 해결되었음을 알리는 동시에 솔루션을 제공 한 사람의 노력에 대해 보상을 받는다. –

+0

나는 stackoverflow에 상당히 익숙하며 앞으로 Andrey에게 조언을 따를 것이다 –

+0

In 대답을 수락하는 조건은 답 점수 아래의 확인 표시를 찾아야합니다. –

답변

6

해시 키를 중복 포함하지 수 있습니다, 그래서 당신은 항상 주어진 키에 대한 하나 개의 값을가집니다.

+1

그건 좋은 지적이야, 안드레이! 고마워! 응답에서 키를 두 번 다시 확인할 필요가없는 것처럼 보입니다. –

+0

따르지 않습니다. 'signal_events'는 해시가 아니라 배열입니다. 문제는 불분명하다. – mudasobwa

+0

@mudasobwa 나는 OP가'signal_events' 배열의 원소 인 해시 안에있는''signal "'키를 의미한다고 생각합니다. –

관련 문제