我正在尝试从以下链接http://pubapi.cryptsy.com/api.php?method=singlemarketdata&marketid=132获取json数据。它应该为我提供以下json数据(显示部分数据。
{
"success": 1,
"return": {
"markets": {
"DOGE": {
"marketid": "132",
"label": "DOGE\/BTC",
"lasttradeprice": "0.00000194",
"volume": "862686257.04978180",
"lasttradetime": "2014-02-24 03:26:52",
"primaryname": "Dogecoin",
"primarycode": "DOGE",
"secondaryname": "BitCoin",
"secondarycode": "BTC",
"recenttrades": [
{
"id": "25951364",
"time": "2014-02-24 03:37:59",
"price": "0.00000195",
"quantity": "41345.42127692",
"total": "0.08062357"
},
{
"id": "25951344",
"time": "2014-02-24 03:37:34",
"price": "0.00000194",
"quantity": "469263.63233043",
"total": "0.91037145"
},
{
"id": "25951238",
"time": "2014-02-24 03:36:51",
"price": "0.00000194",
"quantity": "8312.99451077",
"total": "0.01612721"
},
我在jquery中使用了以下代码来获取数据
$(document).ready(function() {
var url = "http://pubapi.cryptsy.com/api.php?method=singlemarketdata&marketid=132";
$.getJSON(url,function(data) {
console.log(data);
});
});
我能够使用python获取json数据但是使用jquery我没有得到json对象。我在这里错过了什么吗?
答案 0 :(得分:4)
基本问题是您要做的是Same Origin Policy违规行为
API似乎不支持CORS或jsonp,因此您无法使用ajax请求在客户端使用它。
一种可能的解决方案是让您的Web服务器像代理一样运行并将ajax请求发送到您的服务器,然后您的服务器向远程服务器发出api请求并获取响应并将响应转发回客户端。 / p>
答案 1 :(得分:0)