2010-07-18 7 views
3

jquery의 getJSON() 메소드를 사용하여 meetup.com API를 실행하려고 시도 중입니다. 몇 가지 문제가 있습니다. 불을 지르고에서 우리는JQuery ajax getJSON 응답의 크기는 비어 있지만 몸체는 비어 있습니까?

$.getJSON(
'http://api.meetup.com/events.json?group_urlname=Closing-the-NOLA-Gap&key=ourkey', 
function(data) { console.log(data) } 
); 

를 실행할 수 있습니다 우리는 호출이 약간의 시간을내어 볼 수 있습니다. 우리는 응답 헤더를 검사 할 수 있으며 내용 크기가 42K이지만 아직 내용 본문 (firebug에 표시된 것처럼)이 비어 있음을 볼 수 있습니다! 이것이 어떻게 가능한지?

브라우저에서 url을 가리키면 적절한 json 형식의 텍스트가 페이지에 나타납니다.

무엇이 누락 되었습니까?

추신. 우리는 $ .ajax를 시도했고 $ .get - 각각 동일한 결과를 보았습니다. 첫 번째가 url이고 두 번째가 null이고 세 번째가 콜백 인 3 개의 매개 변수로 시도했습니다.

+0

원격/다른 도메인에 전화를하고 있습니까? –

+0

예, meetup.com 도메인에 전화를 걸었습니다 –

+0

전체 URL을 게시 할 수 있습니까? URL에'callback =? '을 사용하고 있습니까? –

답변

5

URL의 쿼리 문자열에 callback=?이 있는지 확인하십시오. 원격 도메인이므로 JSONP (여기에는 callback=? 트리거)을 사용해야합니다. 이처럼 다음 $.getJSON() 문서에서

$.getJSON(
'http://api.meetup.com/events.json?group_urlname=Closing-the-NOLA-Gap&key=ourkey&callback=?', 
function(data) { console.log(data); } 
); 

: URL이 URL에서 문자열 "callback=?"이 포함되어있는 경우

요청이 대신 JSONP로 처리됩니다. 자세한 내용은 jsonp 데이터 유형 설명 ($.ajax())을 참조하십시오.

+0

이 api는 더 이상 사용되지 않으며 v2 버전을 사용하시기 바랍니다. – stanzheng

관련 문제