요청시 json 형식의 데이터를 반환하는 일부 게임 API로 작업하고 있습니다.jQuery ajax 구문 분석 사용 안 함
api가 다른 도메인에 있으므로 crossType 정책으로 인해 dataType : "json"을 사용할 수 없습니다 (오류 : 요청되지 않은 'Access-Control-Allow-Origin'헤더가 없습니다. 의지). 그래서 대신 jsonp를 사용하려고했습니다. jsonp를 사용할 때 jQuery는 parseError를 던집니다. 서버의 데이터는 jsonp가 아니고 jsonp가 아니기 때문입니다.
나는 이미 jsonpCallback과이 종류의 모든 것을 시도했다 - 서버는 여전히 json을 리턴한다.
또한 xhr.responseText를 사용해 보았지만 비어 있습니다. jQuery에 데이터를 구문 분석하지 않도록 지시하는 방법이 있나요? 수동으로 문자열을 구문 분석 할 수 있습니다. 서버가 올바르게 응답하도록 jsonp에 데이터 유형을 설정해야합니다.
그리고 서버에서 데이터가 반환됩니다. 내가 비어 있지 않다는 것을 안다. 크롬에서 개발자 도구를 사용하여 검사 할 수있다.
내 코드 :
$.ajax({
url: "http://eu.battle.net/api/wow/character/turalyon/Blargh",
type: "get",
data: { fields: "quests" },
dataType: "json",
success: function(data, textStatus, jqXHR){
if(typeof func === "function"){
func(data);
}
},
error: function(jqXHR, textStatus, errorThrown){
contentField.html(textStatus);
}
});
추가 정보 : [JSONP on Wikipedia] (http://en.wikipedia.org/wiki/JSONP) – Jeach