我開始在phonegap上的web應用程序,我正在測試遠程服務器連接。猜猜看,它不起作用!我不知道爲什麼。 它使用的是瀏覽器,但不支持我通過腳本創建的phonegap應用程序。我查看了互聯網,論壇等,我沒有找到解釋。也許這是因爲我使用的共同服務器(OVH.FR),但我不確定...我的Ajax的PhoneGap腳本沒有連接到遠程服務器,爲什麼?
幫助!謝謝 !
這裏是我的文件:
的index.html
<!DOCTYPE html>
<html>
<head>
<title>Test software</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<script src="./req/jquery/jquery/jquery-2.1.0.min.js"></script>
<script src="./req/jquery/mobile/jquery.mobile-1.4.5.min.js"></script>
<link rel="stylesheet" type="text/css"
href="./req/jquery/mobile/jquery.mobile-1.4.5.min.css" />
<script>
/* ------------------------------------------------ */
$(document).ready(function(){
$.ajax({
url : 'http://test.dexterin.com/intro/introConnexion.php',
cache: false,
type : 'POST',
dataType : 'xml',
success : function(xml) {
$("#mainPageContent").append("<p>Connected !</p>");
},
error : function(xml) {
$("#mainPageContent").append("<p>No response from ajax</p>");
}
}); // Fin ajax
});
/* ------------------------------------------------ */
</script>
</head>
<body>
<div data-role="page" data-theme="a" id="mainPage">
<div role="content" class="ui-content" id="mainPageContent">
<p>Initialisation du logiciel ...</p>
</div>
</div>
</body>
</html>
config.xml中
<?xml version="1.0" encoding="UTF-8" ?>
<widget xmlns = "http://www.w3.org/ns/widgets"
xmlns:gap = "http://phonegap.com/ns/1.0"
id = "com.phonegap.example"
versionCode = "10"
version = "0.0.1" >
<!-- versionCode is optional and Android only -->
<name>TEST App</name>
<description>
A test for phonegap app
</description>
<author href="https://build.phonegap.com" email="[email protected]gap.com">
Hardeep Shoker
</author>
<access origin="http://test.dexterin.com/" subdomains="true" />
</widget>
introConnexion.php
<?
session_start();
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Methods: POST,GET"); // ,OPTION
header("Access-Control-Allow-Headers: content-type");
header("Access-Control-Allow-Headers: NCZ");
header("Content-type: text/xml;charset=utf-8");
date_default_timezone_set('France/Paris');
echo "<?xml version = \"1.0\" encoding=\"UTF-8\" standalone=\"yes\" ?>\n";
?>
<root>
<element>OK</element>
</root>
[嘗試關於交叉域這個問題的答案(https://stackoverflow.com/questions/1201429/jquery-ajax-fails-when-url-is-from-安裝它不同服務器) –
這不是我用 頭('Access-Control-Allow-Origin:*')做的事情; introConnexion.php文件中的 ? (遠程服務器上的文件) – DrPepper
我使用了一個函數\t \t getXDomainRequest() with:xdr = new XDomainRequest(); 然後: xdr.onload = function(){alert(「Response:」+ xdr.responseText);} xdr.open(「GET」,「http://test.dexterin.com/intro/introConnexion.php 「); xdr.send(); 它返回一個xdr.responseText但是空的... – DrPepper