美文网首页
JavaScript跨域调用服务器数据--jsonp实现

JavaScript跨域调用服务器数据--jsonp实现

作者: 皮蛋馅儿 | 来源:发表于2019-11-29 14:54 被阅读0次

JSONP,该协议的一个要点就是允许用户传递一个callback参数给服务端,然后服务端返回数据时会将这个callback参数作为函数名来包裹住JSON数据,这样客户端就可以随意定制自己的函数来自动处理返回数据了。

jsonp.php页面


header('Content-type: application/json');

$callback = htmlspecialchars($_REQUEST['callback']);

$jsonData = json_encode(['id' => 1, 'name' => '小猫咪']);

echo $callback . '(' . $jsonData . ')';

exit;

第一种:


<script>

    function callbackFun(result) {

        console.log(result)

    }

</script>

<script src="http://test.com/jsonp.php?callback=callbackFun"></script>

第二种:


$.ajax({

    type: 'get',

    async: false,

    url: "http://test.com/jsonp.php",

    dataType: 'jsonp',

    jsonp: 'callback', // 传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)

    jsonpCallBack: 'callbackFun', // 自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据

    success: function (res) {

        console.log(res)

    },

    error: function () {

        console.log('fail')

    }

})

加我微信公众号【皮蛋馅儿】,一起学习哦~

相关文章

  • 浏览器跨域问题,教你手写实现jsonp跨域

    跨域概述为什么会有跨域跨域解决办法:1、jsonp;2、后台代理手写实现jsonp跨域(包括服务器端代码) 跨域问...

  • JavaScript跨域调用服务器数据--jsonp实现

    JSONP,该协议的一个要点就是允许用户传递一个callback参数给服务端,然后服务端返回数据时会将这个call...

  • JavaScript - GET/POST及跨域方法

    xhr 原生方法请求 window fetch 方法 关于跨域 利用JSONP实现跨域调用 使用 CORS(跨域资...

  • js跨域问题

    来源 javascript中实现跨域的方式总结 第一种方式:jsonp请求;jsonp的原理是利用 标签的跨域特性...

  • 跨域上传图片并预览

    跨域上传文件 之前解决跨域问题都是使用的JQuery的JSONP类型的Ajax请求,JSONP原理是让服务器把数据...

  • 跨域JSONP实质与JavaScript实现

    跨域JSONP实质与JavaScript实现 实质 利用script标签的src属性(浏览器允许script标签跨...

  • 什么是跨域?跨域有几种实现形式:

    跨域指的是跨过同源策略,实现不同域之间进行数据交互的过程叫跨域。跨域的实现形式主要有JSONP方法、CORS方法、...

  • 跨域

    跨域指的是跨过同源策略,实现不同域之间进行数据交互的过程叫跨域。跨域的实现形式主要有JSONP方法、CORS方法、...

  • 各种跨域实现

    JSONP实现跨域 原理: 网页通过添加一个 元素,向服务器请求JSON数据,这种做法不受同源政策限制;服务器收到...

  • 实现跨域的方法

    不同域下的接口获取数据,可以使用jsonp和cors。(ie10以下可以使用jsonp获取数据) jsonp实现跨...

网友评论

      本文标题:JavaScript跨域调用服务器数据--jsonp实现

      本文链接:https://www.haomeiwen.com/subject/swhgwctx.html