我正在尝试使用javascript从API获取数据,但我在请求时收到错误。
$.ajax({
dataType: "jsonp",
url: "https://www.bitstamp.net/api/ticker/",
type: "GET",
succes: myfunction
});
结果:
{"error": "GET parameters not allowed for this request."}
我使用Jsonp是因为它的另一个域。 为什么我不能用Jquery获取数据? 如果我只是浏览链接,我可以看到Json。
答案 0 :(得分:1)
因为,正如错误消息所示,bitstamp不允许它。
如果他们收到数据的JSONP请求,他们会回复错误而不是正常响应。
答案 1 :(得分:1)
我刚尝试从您使用AJAX提供的网址中获取数据。服务器没有使用$.ajax
返回任何数据,这清楚地表明服务器不支持跨域请求。这就是为什么我问你是否有权访问代码,因为你有手动指定您是否希望API支持跨域请求。
解决此问题的一种方法是使用某种服务器端语言来访问此API。我曾经遇到过类似的问题和使用的 PHP CURL 来访问API。然后php代码将数据提供给JQuery以用于前端。所以你可以编写中继代码来解决这个问题。