2012-04-18 3 views
0

현재 phonegap을 사용하여 HTML5 및 Zepto.js가 포함 된 모바일 응용 프로그램을 작성하고 있습니다. 저희 서버는 루비에 레일을 사용하고 있습니다. 플레이 북 (테스트 장치)에서 애플리케이션은이 한 화면에서 약 20 %의 시간을 고정시킵니다. 그럴 경우 응답하지 않고 드래그하면 페이지가 스크롤됩니다 (일반적으로 사용 중지 된 항목). 우리 서버에 대한 아약스 호출이라고 확신합니다. 전화는 다음과 같습니다.내 모바일 애플리케이션에 충돌하는 Ajax 호출을 수정하려면 어떻게해야합니까?

$.ajax({ 
     url: myurl+ajaxData+'&callback=?', 
     dataType: 'json', 
     async: true, 
     callback: "callback", 
     success: function(body) { 
      if (body.status === "successful"){ 
       successful(); 
      } 
      else { 
       var errstring = body.status + ": " + body.result 
       console.log (errstring); 
       alert(errstring); 
      } 
     }, 
     error: function(xhr, type) { 
      var errorstring = type + ": " + xhr.status + "\n" + xhr.statusText + "\n" + xhr.responseText; 
      alert (errorstring); 
      console.log (errorstring); 
      storage.setItem("retrieved", "false"); 
     } 
    }) 

누가이 문제의 원인인지 알고 계십니까?

$.ajax({ 
    url: myurl+ajaxData+'&callback=?', 
    dataType: 'json', 
    async: true, 
    error: function(jqXHR, strError){ 
     if(strError == 'timeout') 
     { 
      //do something. Try again perhaps? 
     } 
    }, 
    success: function(){ 
     //do something 
    }, 
    timeout:3000 
}); 

당신은 발생 된 오류의 유형을 볼 수 있습니다 :

답변

1

난 당신이 전화하고 문제 무엇 잡을 수있는 오차 함수에 적절한 제한 시간 설정 에 의해 다음과 같이 코드를 업데이트하는 것이 좋습니다 error : function (jqXHR, textStatus, errorThrown) 옵션의 textStatus 매개 변수에 액세스합니다. 옵션은 "timeout", "error", "abort"및 "parsererror"입니다.

관련 문제