Ajax GET抛出HTTP 400错误请求

时间:2016-04-04 19:52:41

标签: javascript jquery html ajax get

我有这个jquery使用ajax GET请求以jsonp格式获取数据,该请求过去常常工作多年但突然停止工作。

但是当我在我的本地计算机上运行它时,事情是相同的jquery,但它在我托管我的网站的服务器上不起作用。 此外,jquery曾经在jsfiddle上工作,但是当我运行相同的jquery时,甚至在jsfiddle上它也会给我带来相同的HTTP 400错误。但是同样的jquery曾经在jsfiddle上工作过。

以下是重现此问题的代码段:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="jquery-1.11.1.min.js"> </script>
<script>
$(document).ready(function () {

$.ajax({
			url: 'http://d.yimg.com/aq/autoc?query=a&region=US&lang=en-US',
			dataType: 'jsonp',
			jsonpCallback: 'YAHOO.util.ScriptNodeDataSource.callbacks'
		    });
	    });

YAHOO = {
    util: {
	ScriptNodeDataSource: {
	    callbacks: function(data) {
		var sourceArray = $.map(data.ResultSet.Result, function(elem) {
		$("#data").append( elem.name + ' -- ' + elem.symbol + '<br />');
		});
		}
	    }
	}
    };
</script>

<div id="data"> </div>

上面的jquery似乎也在进行堆栈溢出。但是在jsfiddle和我托管我网站的服务器上,同样的jquery无效。

看起来类似的事情发生在jsfiddle和我托管我的网站的服务器上,因为它在两个地方给我相同的HTTP错误(即400 Bad request)

My jsfiddle link

在上面的链接中,如果我运行我的代码,我可以在开发人员控制台中看到我收到HTTP 400错误。

我已经验证了GET网址,在工作和非工作情况下我看起来很好,但没有想到我应该在哪里寻找以解决这个问题。 任何有关这方面的帮助将不胜感激。

刚刚发现,当我尝试通过https://www.browserling.com打开我的jsfiddle链接时,即使jsfiddle正在工作(它是一个可以在不同浏览器中测试你的网站的网站)

但是当我尝试直接从我的PC打开它时,同样的jsfiddle链接正在抛出HTTP 400。奇怪!!我的网络或ISP有问题:(

0 个答案:

没有答案