2012-09-17 4 views
0

서버에서 일부 데이터를 가져 오기 위해 HTTP GET 요청을하기 위해 아래 코드를 시도했습니다. HTTP 요청이 서버에 도달하지 못하는 것 같습니다. 내가 여기서 뭔가를 놓치고 있니?

$.get(url, function(data){alert(data);}, "json").error(onHttpError)도 시도해 보았습니다. 그러나 운이 없다.

$(document).ready(function() 
{ 
    $.getJSON(url, onHttpSuccess).error(onHttpError); 

    /** 
    *onHttpSuccess 
    */ 
    function onHttpSuccess(response) 
    { 

     alert("ASG Data Received:" + response); 
    } 

    /** 
    *onHttpError 
    */ 
    function onHttpError() 
    { 
     var  errorMsg  = "HTTP Error!!!"; 

     $('#message').html(errorMsg); 

     alert(errorMsg); 
    } 
}); 

전문가에게 알려주십시오. 감사!

DK

+2

그래서 'url'은 어디에 정의되어 있습니까? 같은 서버에서 문서를 호출하고 있습니까? –

+1

'url'의 값은 무엇입니까? 올바른 URL입니까? 요청을 한 페이지와 동일한 프로토콜, 도메인, 포트 등입니까? –

+0

onHttpError 메소드 선언 다음에 $ .get 또는 $ .getJSON 호출을 이동하려고 시도 했습니까? –

답변

1

이 답이다,하지만 난 AJAX 호출이 제대로 작동 대부분의 경우에 실행 한하지만, JSON jQuery에 의해 구문 분석되지 않은 서버에서 반환 등 전체 작업 확실하지 실패로 보인다.

종종 원인은 서버가 응답의 콘텐츠 유형을 지정하지 않았기 때문이며 다음 문제 해결 단계는 "json"을 반환 유형으로 지정하지 않고 $ .get 요청을 수행하는 것입니다. 반환 유형으로 "텍스트"를 지정하고 서버에서 응답을 받을지 확인하십시오.

때로는 서버 응답을 일반 텍스트로받은 다음 성공 함수에서 JSON.parse()를 수동으로 실행해도 운이 좋지 않을 때도 있습니다.

0

예. 이 코드 앞에 URL이 정의되어 있으며 유효한 URL입니다. 브라우저에서 URL을 직접 사용하고 Enter 키를 누르면 서버가 요청을 수신하고 응답을 보냅니다.

관련 문제