2012-04-10 4 views
1

jquery를 통해 this remote JSONP feed을 grap하려고합니다.이 JSONP 피드가 "예기치 않은 토큰"오류를 발생시키는 이유는 무엇입니까?

내가하려고 할 때마다, 나는의 오류 얻을 "catch되지 않은 구문 에러를 : 예기치 않은 토큰 ("또는 이와 유사한을

내가 뭔가 잘못하고 또는 포맷 된 JSONP 데이터에 뭔가 잘못 탈출/인 건가요

.? 바이올린 :이 피드는 JSON을 반환 http://jsfiddle.net/callmeed/d3tSX/2/

var _event_url = "http://calvaryslo.onthecity.org/plaza/*events*?format=json"; 
$.ajax({ 
    type: 'GET', 
    url: _event_url, 
    dataType: 'jsonp', 
    success: function(msg) { 
     alert(msg.length); 
    } 
});​ 
+3

이 URL은 JSON 형식이 아닌 JSON 형식의 데이터를 반환합니다. – hamczu

+0

해당 페이지의 출력을 제어 할 수 있습니까? 아니면 제 3 자 API입니까? – VictorKilo

답변

4

때문에이 아닌 자바 스크립트 함수 호출 :

[{Query172031345640518702567_1334079878875({... 

그러나 그것이 있어야이 서비스가 사용자의 제어하에있는 경우에는

Query172031345640518702567_1334079878875({... 

내가 모르는 당신이 할 수있는 그것을 변경, 또는 당신은 단지 URL (매뉴얼 확인) 일부 PARAMS를 추가해야합니다.

응답의 콘텐츠 형식은 application/javascript이 아니고 text/json이되어야합니다.

+0

그래, 그게 사실이었다. 나는 서비스를 통제하지 않으며 그것을 인정한 사람들은 제대로 구조되지 않았다. 감사. – Callmeed

0

dataType: 'jsonp'을 사용하는 경우 JQuery는 요청에 callback url 매개 변수를 추가합니다. 이 매개 변수의 값은 서버가 반환하는 콜백 함수의 함수 이름이어야합니다. Eugene Retunsky가 이미 언급했듯이이 형식이 잘못 지정 되었기 때문에 서버 코드가 함수 이름의 첫 번째 문자를 생략하고 있기 때문에 jQuery_674...Query_674...이되어 작동하지 않습니다.

관련 문제