2013-12-16 1 views
0
$.ajax({ 
     url: "api/basket", 
     type: "GET", 
     dataType: "json", 
     error: function (request, status, error) { 
      alert(request.responseText); 
     }, 
     success: function (data) { 
        Process(data); 
     } 
    }); 

ASP.NEN 웹 양식, .Net Framework 4.0을 사용하며 위에 작성한 아약스 호출이 있습니다. 그리고 그것은 정상적인 HTTP 페이지에서 나에게 데이터를 제공하지만, 나는이 호출이 HTTPS 페이지에 있다면 parserror를 리턴한다. "예기치 않은 토큰 <"Ajax ASP.NEt Web API 메소드 호출. HTTPS 페이지에서 수행 할 때 구문 분석 오류가 발생합니다.

무엇이 잘못 되었나요?

답변

0

아약스 요청이 JSON을 반환하지 않고 HTML 또는 XML을 반환합니다. 따라서 jQuery가 응답을 구문 분석하려고하면 첫 번째 문자는 <이고 구문 분석 오류가 발생합니다.

정확한 결과를 보려면 피들러와 같은 디버깅 도구를 사용하십시오.

+0

Aparently yes,하지만 json을 반환하는 방법은 무엇입니까? 나는 이미 dataType : "json"을 설정했다. – Andreas

+0

'dataType : 'JSON'을 설정하면 jQuery에게 JSON 응답을 "기대하고"있는 것으로 간단하게 알린다. 실제로 서버가 JSON을 반환하도록 강제하지는 않습니다. JSON을 실제로 반환하려면 서버에서 API를 구성해야합니다. –

+0

문제는 웹 api 메서드가 https 페이지에서 호출 될 때 디버그에서 히트되지 않는다는 것입니다. – Andreas

관련 문제