手写一个jsonp
来源:互联网 发布:人工智能怎么读 编辑:程序博客网 时间:2024/06/04 22:05
(function (window,document) { "use strict"; var jsonp = function (url,data,callback) { // 1.将传入的data数据转化为url字符串形式 // {id:1,name:'zhangsan'} => id=1&name=zhangsan var dataString = url.indexof('?') == -1? '?': '&'; for(var key in data){ dataString += key + '=' + data[key] + '&'; }; // 2 处理url中的回调函数 // cbFuncName回调函数的名字 :my_json_cb_名字的前缀 + 随机数(把小数点去掉) var cbFuncName = 'my_json_cb_' + Math.random().toString().replace('.',''); dataString += 'callback=' + cbFuncName; // 3.创建一个script标签并插入到页面中 var scriptEle = document.createElement('script'); scriptEle.src = url + dataString; // 4.挂载回调函数 window[cbFuncName] = function (data) { callback(data); // 处理完回调函数的数据之后,删除jsonp的script标签 document.body.removeChild(scriptEle); } // 5.append到页面中 document.body.appendChild(scriptEle); } // 因为jsonp是一个私有函数外部不能调用,所有jsonp函数作文window对象的一个方法,供外部调用 window.$jsonp = jsonp;})(window,document)
阅读全文
0 0
- 手写一个jsonp
- 手写一个JSONP
- 手写一个JSONP
- JSONP(手写一个跨域组件)
- 手写登录借口,jsonp跨域传值
- 手写jsonp解决跨域问题原理
- 如何手写一个servlet
- 手写一个SqlHelper
- 自己手写一个springmvc
- 手写一个bind
- 手写一个手机网页
- 手写一个线程池
- 封装一个JSONP方法
- 手写纯HTML5 page一个
- 手写的一个图表插件
- 手写的一个日历表格!
- 手写一个json格式化 api
- 手写一个简单的RPC
- 堆内存与栈内存
- Mac osx中使用gitk
- 解释执行的语言相比编译执行的语言有什么优缺点?
- win7下vm虚拟机,centos7,设置共享目录为网站根目录
- OJ-火星???????计算器
- 手写一个jsonp
- Git提交步骤
- Windows中的进程的Working Set,Private Bytes和Virtual Bytes
- Robotframework使用自写库连接mysql数据库
- Struts2学习之三种获得表单数据方式
- Spring定时任务的几种实现
- Linux 上搭建 Zookeeper集群
- Linux安装JDK步骤
- 【R语言 爬虫】用R爬虫,爬取杭州安居客九堡租房信息