【发布时间】:2012-05-03 01:46:39
【问题描述】:
我正在尝试从另一个域中的服务器访问一些数据。
所以我有这个 php 代码:
header('Content-type: application/json');
$callback = $_GET[callback];
echo $callback . '(' . $CIPHERDATA . ')';
在客户端运行的javascript是这样的
$.getJSON("http://mydomain.gr/zerobin-015/?24c3285?callback=?",function(jsondata){
alert(jsondata.data);
alert("hi");
});
警报不显示。 唯一发生的事情是创建一个包含我需要但我无法访问的所有信息的脚本标签。
<script src="http://mydomain.gr/zerobin-015/?24c3285?callback=jsonp1335048265855&_=1335048265874">
({"data":"{\"iv\":\"smDkNQMt0MIbPABPbAb+xQ\",\"salt\":\"aoFfKV+jHhs\",\"ct\":\"Ns17UQZQN\/ktO2hUW+dPug\"}","meta":{"expire_date":1337635538,"postdate":1335043538}})
</script>
我的 json-p 格式有问题吗? 这些数据的正确格式是什么以便可以访问?
【问题讨论】:
-
返回的jsonp数据是否应为上述格式:({"data":"{\"iv\":\"smDkNQMt0MIbPABPbAb+xQ\",\"salt\":\ "aoFfKV+jHhs\",\"ct\":\"Ns17UQZQN\/ktO2hUW+dPug\"}","meta":{"expire_date":1337635538,"postdate":1335043538}}) 还是应该像这:([{"数据":"{\"iv\":\"smDkNQMt0MIbPABPbAb+xQ\",\"salt\":\"aoFfKV+jHhs\",\"ct\":\"Ns17UQZQN\/ ktO2hUW+dPug\"}","meta":{"expire_date":1337635538,"postdate":1335043538,"remaining_time":2544592}}])
-
也许吧。也许不吧。该示例中的数据是一个 jsonified 字符串。在我看来,双重 jsonification 是不必要的。
-
jsonified 字符串是什么意思?jquery 应该如何理解这些数据?
标签: javascript jquery cross-domain jsonp getjson