问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

jsonp是怎么通过script标签进行跨域的

发布网友 发布时间:2022-04-18 19:44

我来回答

1个回答

热心网友 时间:2022-04-18 21:14

script标签的还在是可以跨域的,jsonp 就是利用这一点来跨域。

在 GET 请求中,我们都是为了获取远程的一些数据,所以要实现的目的就是服务器端代码要通过某种方式让 JavaScript 能够拿到数据。所以,jsonp 的实现大概有以下几个步骤:


创建一个全局的临时函数,并在函数内调用响应回调

        

// jsonp1 是生成的一个临时函数名,可以通过简单的计数来生成,如jsonp2, jsonp3

// 生成不同的函数的目的是为了防止多个 jsonp 同时请求,回调的函数被覆盖

window.jsonp1 = function( data ) {
    
    // 调用在成功之后的回调方法
    
    onsuccess( data );
    
    // 删除临时函数,释放内存
        
    window.jsonp1 = null;
    
};


2. 通过  document.createElement( 'script' ) 创建 script 标签,src 属性设置成远程的 api 的 url。其实就是让浏览器加载一段 JS,这段 JS 就是服务器返回的内容。


3. 服务器端对返回的数据进行包装,生成一段 JS,这段 JS 里面调用了 jsonp1 这个方法,并且把数据作为参数传进去。


4. script 标签加载完成之后,jsonp1 被执行,通过 onsuccess 将 data 传递给回调方法,jsonp1 方法被销毁,释放内存。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么word换行的时候不对齐? 老人各类心脏病的急救方法有哪些呢? 老人心脏病突然发作怎么办 老人突发心脏病该如何急救呢? TAO黄子韬 tao什么学校毕业? 红楼梦第14回特色句92句精选 今天出院又入院医保 FPM看这一篇就够了 “更何入他不二门”的出处是哪里 英语动词加es的规律 摩旅最常用的车子 升仕310V可以长途摩旅吗? 户外旅行时带什么装备最轻便实用? 摩旅是很好的旅行方式,但是摩托车是一件很容易被盗的物品,如何预防旅行过程中车子被盗? 我的脸上好多斑啊,象是铅汞中毒的斑,又象是黄褐斑,怎么办啊 江门哪有买摩旅装备的? 铅汞斑皮肤吃什么能去除 运动摄像机谁买过卡姆速品牌的?你们能说下吗? 摩旅直播用什么设备 我想买款数码相机,摩旅用,求推荐! 中国联通庄河营业厅电话? 附近联通营业厅上班时间和地址? 中国联通的 重庆九龙坡区杨家坪附近的中国联通营业厅在哪 青年路附近的联通营业厅? 哪里有中国联通营业厅 整个大地百花绽放 ……中的它指什么 附近有联通营业厅位置在哪 哪里可以查到附近的联通营业厅? 谁知道One Night in 北京:同风格的其他歌曲? 有几种联网的方法 小米11什么时候到货 1米等于多少厘米 1厘米等于多少分米 电脑连网方式方法有哪几种? 《失落的秘符》全集高清完整版视频免费在线观看,求百度网盘资源 本人初一,发现最近写作越来越差,如何提高写作水平? 求丹布朗的《失落的秘符》TXT全本 《失落的秘符》有多少字? 《失落的秘符》好看么? 我是一名初一的学生、可是我的作文写的很烂,我想问下用什么办法可以提高写作水平啊? 失落的秘符的内容简介 被别人永久注销了,怎么样才能找回来,急等 我作文写的很差,字数也很少,怎样提高写作水平? 我上初一! 失落的秘符结局 被注销怎么找回来? 失落的秘符的作品鉴赏 丹布朗小说有哪几部被改编成电影了 不小心注销了怎么恢复? 丹布朗《失落的秘符》里古代奥义的意思是什么 注销了能恢复吗