2017-02-01 61 views
0

我需要phonagap/cordova應用程序的一些幫助,它非常基本,但我不能讓我的ajax調用工作到我的手機到服務器,一切正常工作在瀏覽器。請注意我使用phonegap的在線構建器來編譯我的代碼。Phonegap android ajax調用在瀏覽器中工作,而不是在移動

我已經嘗試了所有的以下內容:

  • $ .support.cors =真。
  • 訪問起源= 「*」
  • 允許意圖HREF = 「*」
  • 讓導航HREF = 「*」

現在我已經看了看白名單,但由於某種原因,它打破了我配置文件添加時,然後我嘗試遺留白名單,然後我無法得到它在phonegap上建立在線。

我的AJAX方法:

$("#btnTest").click(function (evt) { 
     var value = ""; 
     var options = {}; 
     options.url = "http://*/MobileService/ServiceFile.asmx/test"; 
     options.type = "POST"; 
     options.data = JSON.stringify({ "data": value }); 
     options.dataType = "json"; 
     options.crossDomain = true; 
     options.contentType = "application/json"; 
     options.success = function (result) { $("#error-msg").text(result.d); }; 
     options.error = function (err) { $("#error-msg").text("Error saving the data!"); }; 
     console.log(value); 
     $.ajax(options); 
     evt.preventDefault(); 
    }); 

我的index.html頭標記:

<head> 
<meta name="viewport" content="width=device-width, initial-scale=1"> 
<title>MobileApp</title> 
<meta name="viewport" content="width=device-width, initial-scale=1"> 
<link href="css/jquery.mobile-1.4.5.min.css" rel="stylesheet" /> 
<script src="scripts/jquery-2.2.0.min.js"></script> 
<script type="text/javascript"> 
$(document).bind("mobileinit", function() { 
    $.support.cors = true; 
    $.mobile.allowCrossDomainPages = true; 
}); 
</script> 
<script src="scripts/jquery.mobile-1.4.5.min.js"></script> 
<script src="scripts/jSignature/jSignature.min.js"></script> 
<link href="css/index.css" rel="stylesheet" /> 

另外請注意,我使用的Visual Studio 2013開發

謝謝提前

+0

瀏覽器控制檯中的任何錯誤? –

+1

[AJAX調用不能在Phonegap中工作,但工作正常]的可能的副本(http://stackoverflow.com/questions/20717128/ajax-call-not-working-in-phonegap-but-working-normally) –

+0

沒有唯一我在瀏覽器控制檯中收到的錯誤是當我的手機是鏈接並且我試圖將json數據發佈到服務器時,它只是返回一個404錯誤 – Grifflet

回答

1

所以要回答我自己的問題,最終我找到了白名單插件的舊版本。

只要我將它添加到我的項目,它解決了CORS錯誤。

相關問題