2015-05-12 56 views
0

我試圖在使用phonegap後運行我的應用程序,但未能通過AJAX代碼部分 它在Ripple模擬器上完美工作,但在我的設備(android 5.0)上安裝ajax調用剛剛失敗(獲得ErrMSG)。 感謝 這是我使用的代碼:使用PhoneGap構建APK後ajax調用失敗

$.ajax({ 
          type: "POST", 
          url: "LogIn.aspx/UserCheck", 
           data: "{'UserName':'" + UserName + "','Password':'" + Password + "'}", 
          contentType: "application/json",      
          dataType: "json", 
          success: function (msg) { 
           if (msg.d == true) { 
            window.location.href = "Default.aspx"; 
           } 
           else 
            alert("please insert correct username and password"); 
          }, 
          error: function (xhr, textStatus, errorThrown) { 
            alert('Ajax Call Failed'); 
         } 
         }); 
+0

您必須使用絕對網址,如http://yourserver.com/LogIn.aspx/UserCheck – jcesarmobile

回答

0

它看起來像你的Ajax調用本地Web服務器上調用。由於您目前沒有在本地網絡服務器上運行,因此您需要調整您的ajax調用以打開完整的url。你有兩個地方(至少在你的代碼已經提供):

url: "LogIn.aspx/UserCheck" 

window.location.href = "Default.aspx"; 

這個代碼最後一位真正需要的頁面或塊的代碼在你的應用程序。這樣,如果手機沒有連接到互聯網,無論出於何種原因,您仍然可以爲用戶提供有效的錯誤消息。

完成此操作後,您需要在您的應用中登錄您的域名whitelist

0
  1. 在部署到手機之後,您將跨域調用到您的aspx。所以你也需要啓用Cors。

  2. 爲什麼登錄後重定向到default.aspx?如果您將位於手機中的原始index.html重定向到位於IIS服務器中的default.aspx,則您失去了對手機應用程序的控制,所有插件都無法工作,就像您的應用程序成爲手機瀏覽器。

  3. btw,你用vb或c#在aspx中?