2009-11-15 2 views
0

작은 앱에서 저는 twitter_oauth gem (source of the methods I'm using)을 사용하고 있습니다. 이는 우연히도 JSON 루비 보석.Ruby에서 JSON.parse 응답의 필터링 (및 JSON gem)

def messages(page=1) 
     oauth_response = access_token.get("/direct_messages.json?page=#{page}") 
     JSON.parse(oauth_response.body) 
end 

그것은 JSON.parse 방법을 사용하여 생성 된 트위터 JSON을 파싱 :

I는 그 소스 인 다음 메시지 방식을 사용하고있다. 이제는 특정 사용자가 보낸 메시지 만 표시하도록 응답을 필터링합니다. 즉, 사용자 단위로 계정 메시지를 가져올 수 있기를 바랍니다.

JSON gem 문서를 살펴 보았지만 쉽게 할 수있는 방법을 찾을 수 없었습니다. 필자는 일반적으로 JSON (XML 선호)을 사용하지 않지만 Twitter_oauth 보석에 의존하기 때문에 보석의 소스 코드를 변경하거나 덮어 쓰지 않으면 (필자가 선호하지 않는 한) 필자는 그것을 배워야한다.

Ruby에서 JSON을 정렬하는 실용적인 방법을 아는 사람이 있습니까?

답변

2

왜 JSON을 사용해야합니까? JSON.parse은 역 직렬화 구조 (Ruby 배열 및 해시)를 제공하므로 모든 출력 (messages)에 대해 이 무엇이든지간에 select을 수행하는 것만 큼 (여기서는 샘플 JSON 출력을 붙여 넣지 않은 것으로 가정) 메서드가 반환됩니다.

+0

예, 응답을 필터링 할 수 있지만 응답 구조가 어떻게되어 있는지 알지 못했습니다. 나 지금 일하고있어, 고마워. –

+0

일반 Ruby를 사용하여 객체 필터링을 동의합니다 ... –

관련 문제