2012-10-15 32 views
0

我想用以下代码从远程主机获取json数据。但是失败了,我使用jQuery的get JSONjquery json从远程主机解析

我的代码

<script type="text/javascript" language="javascript"> 

$(document).ready(function() { 
    $("#driver").click(function(event){ 
     $.getJSON('http://108.167.132.194/~softnet/json.php?callback=?', function(jd) { 
     $('#stage').html('<p> Name: ' + jd.name + '</p>'); 
     $('#stage').append('<p>Password : ' + jd.password+ '</p>'); 

     }); 
    }); 
}); 

</script> 

当我试图让数据从本地主机它完美

+0

服务器给你什么回应?我可以看到你使用的是JSONP,所以它可能不是一个跨域问题。 –

+0

我没有得到任何回应 –

+0

也许[相同来源政策](http://en.wikipedia.org/wiki/Same_origin_policy)很重要?检查浏览器中的控制台消息。 –

回答

1

你应该看看跨域Ajax调用。你试图做的事情不会直接工作。您将不得不使用JSONP或将ips/hosts添加到允许的域列表中。

我可以从你的客户端代码中看到,你使用的是JSONP,但你的服务器端不支持它。您还需要在服务器端实现它以支持JSNOP。

+0

我应该在哪里输入这些细节,我已经在使用回调 –

0

您的服务器需要在回调中包装响应,以便浏览器不会立即对其进行评估。回调参数应该被设置为返回的回调名称。