jsonp跨域

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsonp跨域相关的知识,希望对你有一定的参考价值。

 1 (function(window, document, undefined) {
 2   ‘use strict‘;
 3   var jsonp = function(url, data, callback) {
 4     var fnSuffix = Math.random().toString().replace(‘.‘, ‘‘);
 5     var cbFuncName = ‘my_json_‘ + fnSuffix;
 6     window[cbFuncName] = callback;
 7     var querystring = url.indexOf(‘?‘) == -1 ? ‘?‘ : ‘&‘;
 8     for (var key in data) {
 9       querystring += key + ‘=‘ + data[key] + ‘&‘;
10     }
11     querystring += ‘callback=‘ + cbFuncName;
12     var scriptElement = document.createElement(‘script‘);
13     scriptElement.src = url + querystring;
14     document.body.appendChild(scriptElement);
15   };
16   window.$jsonp = jsonp;
17 })(window, document);

调用

 1   <div id="result"></div>
 2   <script>
 3     (function() {
 4       $jsonp(
 5         ‘http://api.xxx..com/xx/xx‘, {
 6           page: 10,
 7           count:15
 8         },
 9         function(data) {
10           document.getElementById(‘result‘).innerhtml = JSON.stringify(data);
11         });
12     })();
13   </script>

 

以上是关于jsonp跨域的主要内容,如果未能解决你的问题,请参考以下文章

jsonp 方式处理跨域前后端代码如何配合?

前端 - jsonp 跨域ajax

jsonp实现数据跨域请求

ajax之jsonp跨域请求

JS的jsonp是什么?5分钟学会jsonp跨域请求

JSONP