我做了一个非常简单的index.php代码如下跨域URL jQuery中
<!DOCTYPE html>
<head>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/httpGet.js"></script>
<script type="text/javascript" src="js/jquery.mobile.js"></script>
</head>
<body>
<input id="string" type="text"/>
<input id="button" type= "button" value="Check" />
</body>
</html>
在这个HTML代码中,我们得到了许多用户来回并调用httpgGet.js文件。 而httpGet.js是:
$('#button').click(function() {
var string = $('#string').val();
$.post('http://...../isprime.php',{number: string},function(data){
alert(data);
}
}
我们发送的用户数,它检查,如果用户数是一个素数或不isprime.php文件。当我说$ .post('php/isprime.php',.....)它工作得很好,但是当我想从另一台计算机调用isprime.php时,它不起作用。
我的意思是$ .post('192.168.1.1/test/isprime.php'....)给了我一个未找到的错误。
该文件存在,我可以使用浏览器直接调用运行代码。当我输入浏览器192.168.1.1/test/isprime.php文件是可达的,但从js文件,它失败。显然,我也可以ping 192.168.1.1。即使使用FireBug,我也检查过代码并且没有办法彻底。
我搜索了很多,并发现一个浏览器不允许跨域调用(出于安全目的,我猜),但我找不到解决方案来摆脱这个问题。有一些关于YQL(这是一种查询语言,我不知道我是否可以使用它)。我还看到了一些关于cULR的内容,但我不确定这是否也适用。
请帮忙。我真的需要它。 非常感谢你。
首先使用完整的URL使用http://方案,第二:你必须为你的站点启用[CORS](http://www.w3.org/TR/cors/) – 2013-02-16 19:00:58
Hi @Akam并且谢谢回复。我也使用了http,它失败了。我在第二台计算机上使用XAMPP Web服务器来扮演服务器的角色。最终,这个PHP代码将被托管在一个正在播放PAW等Web服务器的Android移动设备上。是否启用CORS帮助? – Espanta 2013-02-17 03:06:42