CORS请求失败-PHP-GoDaddy共享主机与URL转发
我在我的网站上开发了一款游戏,现在我正在使用Phonegap Build将其转换为一款应用程序。Phonegap构建要求我从GIT存储库中提取代码,该存储库正在工作,但这也意味着我现在正在使用Firefox在(本地)计算机上编辑和测试我的文件 我的代码对我网站上的PHP文件进行了以下AJAX调用:CORS请求失败-PHP-GoDaddy共享主机与URL转发,cors,Cors,我在我的网站上开发了一款游戏,现在我正在使用Phonegap Build将其转换为一款应用程序。Phonegap构建要求我从GIT存储库中提取代码,该存储库正在工作,但这也意味着我现在正在使用Firefox在(本地)计算机上编辑和测试我的文件 我的代码对我网站上的PHP文件进行了以下AJAX调用: $.ajax({ type: "POST", url: "mysite.com/loadlocchars.php", data: 'locid='+locid, dataType: "json", s
$.ajax({
type: "POST",
url: "mysite.com/loadlocchars.php",
data: 'locid='+locid,
dataType: "json",
success: function(data)
{
$.each(data, function(key,i)
{
// do stuff
});
}
});
我仍然得到这个CORS错误,即使我添加了
header("Access-Control-Allow-Origin: *");
根据本网站的指示,作为我的PHP文件的第一行:
跨源请求被阻止:同源策略不允许读取mysite.com/loadlocchars.php上的远程资源。(原因:缺少CORS标头“访问控制允许原点”)
这个域名确实有一个指向我的GoDaddy共享主机的URL,但我怀疑这和它有什么关系。我宁愿不要像其他SO答案中推荐的那样使用JSONP
我遗漏了什么吗?问题解决了!GoDaddy共享托管、域转发,甚至在我的PHP文件开头添加CORS访问控制语句都与此无关 它不能在我的浏览器上运行,在我的计算机上运行本地文件,但是当我使用PhoneGap build编译并安装到我的iOS和Android设备上时,脚本工作得非常好!事实上,我在没有任何CORS/PHP语句的情况下尝试了它,它很快就成功了
我现在很好奇为什么我的文件在本地计算机上运行时不工作,但我想这是一个单独的S/O问题,我稍后会问这个问题。:-) 前面的回答帮助了我,但没有回答这个问题 我明白了。也有同样的问题 是的,它在phonegap中工作,但本地Godaddy共享主机拒绝该呼叫 要使其与GoDaddy一起工作,请执行以下操作: 步骤1:从PHP文件中删除此代码:
header("Access-Control-Allow-Origin: *");
步骤2:将此代码放在.htaccess文件中
Header set Access-Control-Allow-Origin "*" //opens to any server
Header set Access-Control-Allow-Origin: http://localhost //opens for just localhost
现在你可以开始了。hi@naoru只需上传并使用phonegap build编译即可。当我在本地计算机上运行脚本时,它不起作用,但在iOS和Android设备上使用PhoneGap Build编译和安装脚本时,它起作用。为什么它在本地计算机上不工作是另一个问题。你知道为什么它在本地计算机上运行时不工作吗@爱德华:你能回答我在这篇帖子上的问题吗-