我正在尝试处理javascript中的跨域问题,并且刚刚开始了解JSONP。我尝试了以下方法,希望它能起作用,但要么我发出了嘘声,要么我不完全理解这个概念:
<script src="https://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
$.getJSON( "https://somedomain.com/dash-beta/workers/ip.php?format=json&callback=?", function(data){
alert (data.ip);
});
</script>
另一侧的脚本以以下格式返回数据:
({"ip":"0.0.0.0"})
但警报从未响起。就这一点而言,如果我把"alert('woo!');'放在它的位置,它就不会开火。我哪里出了问题?
在PHP方面,您应该返回传递的callback
:
echo $_GET['callback'] . '({"ip":"0.0.0.0"});';