为了账号安全,请及时绑定邮箱和手机立即绑定

jsonp跨域获取信息没有callback怎么获取信息

jsonp跨域获取信息没有callback怎么获取信息

慕莱坞森 2018-09-12 09:10:03
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />  <script type="text/javascript">      function jsonpCallback(data) {    for(var i in data)alert(i);}</script>  <script type="text/javascript" src="http://crossdomain.com/services.php?callback=jsonpCallback"></script>  上面代码是有callback的,所以能获取到result和msg。要是最下面那段代码没有callback(http://crossdomain.com/servic...,内容和有callback(http://crossdomain.com/servic...相比较,jsonpCallback{"result":{"html":""},"msg":""}{"result":{"html":""},"msg":""}<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />   <script type="text/javascript">  //这段该怎么填?</script>    <script type="text/javascript" src="http://crossdomain.com/services.php"></script>我的问题就是这段没有callback的我该怎么填?才能和有callback的弹出的是一样的值
查看完整描述

1 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

主要看你的后台是怎么写的。

要想有一模一样的值,services.php 就得做一些改动,不然是不可能实现的(数据内容是由php决定的,不是js决定的,js只是决定了如何展现数据而已)。

例如,要想返回一模一样的值,services.php 可以这样改:

js: function jsonpCallback(data) {
   alert(data);
 }

services.php:
$callback = isset($_GET['callback']) ? $_GET['callback'] : 'jsonpCallback';
$sendData = array(  'result' => array(                'html' => ''
              )  'msg'    => '');
$sendData = $callback . ' ' . json_encode($sendData);echo <<<EOT
<script> {$callback}({$sendData});
</script>
EOT;


查看完整回答
反对 回复 2018-10-20
  • 1 回答
  • 0 关注
  • 591 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号