我正在尝试使用Bitstamp API。但不知怎的,它不起作用。
这是代码:
$.getJSON("https://www.bitstamp.net/api/ticker/", function(person){
$.each(person, function(key, value){
document.write(key+":"+value+"<br />");
});
});
这是jsfiddle:http://jsfiddle.net/mojit/QKTrD/
我不知道这里有什么问题。就像我在浏览器上运行API网址一样。但是当我尝试使用jQuery访问其参数时它也不起作用。
我尝试用其他的API网址替换网址,例如MtGox和MtGox完美无缺。但Bitstamp没有。
谁能告诉我哪里出错?
真的很感激。
感谢。
答案 0 :(得分:2)
您正尝试访问其他域中的数据。它被称为跨域请求,通常不允许。有一种名为jsonp的技术,你应该检查bitstamp是否支持这种技术。如果没有,那么你应该做一个代理。通过代理我的意思是一些本地文件,它使用一些服务器端技术来获取请求。你可以在php,nodejs或者你正在使用的任何东西中实现它。然后你的js代码会向你服务器上的文件发出请求。
$.ajax({
dataType: "json",
url: "proxy.php",
data: { url: "https://www.bitstamp.net/api/ticker/" },
success: function(result) {
$.each(person, function(key, value){
// ...
});
}
});
因此,只需传递要从中获取数据的网址。