寻求绕过同源策略(并且没有后端服务器 - 我只有一个网站,它的JS脚本托管在Google云端硬盘上)我决定使用WhateverOrigin来处理我正在进行的项目对于某人。
到目前为止,它适用于每个网站 - 除了this one,它返回404.
请参阅my JSFiddle test(或下面的代码片段),以便在无效工作页面和工作页面之间进行比较(由于某种原因,这些函数的工作顺序相反,但注释掉其中一个函数调用清楚地显示哪个URL正在工作,哪个不可用。
// for some reason this is calling the functions in the reverse order -- but try commenting out and you'll see that the second one doesn't work, the first one does
$(function() {
works();
notWorking();
function works() {
$.getJSON('https://whateverorigin.herokuapp.com/get?url=' + encodeURIComponent("http://afcl.ussoccerda.com/sam/teams/index.php") + '&callback=?', function(data) {
alert(data.contents);
});
}
function notWorking() {
$.getJSON('https://whateverorigin.herokuapp.com/get?url=' + encodeURIComponent("http://afcl.ussoccerda.com/sam/teams/index.php?team=1642601") + '&callback=?', function(data) {
alert(data.contents);
});
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
我不知道我在编程方面做错了什么,或者我怎么能解决这个问题。除了使用WhateverOrigin之外,我没有太多的选择,因为我的整个项目都基于它,除了这一个网页之外其他一切都在工作。
答案 0 :(得分:0)
我假设在最终版本中,Web应用程序和服务器将位于同一个域中,您只需要在开发期间执行跨源请求。 如果您只需要在开发中进行跨源请求,那么使用chrome进行开发并安装&#34; Allow-Control-Allow-Origin:*&#34; chrome的插件并启用跨源访问。