国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 網(wǎng)站 > 建站經(jīng)驗(yàn) > 正文

-Ajax實(shí)現(xiàn)跨域訪(fǎng)問(wèn)的三種方法

2019-11-02 14:35:01
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
本文給大家介紹了ajax實(shí)現(xiàn)跨域訪(fǎng)問(wèn)的3種解決方案,非常的實(shí)用,個(gè)人比較推薦第三種,小伙伴們可以
歷史人物故事[www.9-39.com/html/person/]
著重看下。  

一、什么是跨域

我們先回顧一下域名地址的組成:

http:// www . google : 8080 / script/jquery.js

     http:// (協(xié)議號(hào))

www (子域名)

google (主域名)

8080 (端口號(hào))

script/jquery.js (請(qǐng)求的地址)

* 當(dāng)協(xié)議、子域名、主域名、端口號(hào)中任意一各不相同時(shí),都算不同的“域”。

* 不同的域之間相互請(qǐng)求資源,就叫“跨域”。

比如:http://www.abc.com/index.html 請(qǐng)求 http://www.def.com/sever.php

二、處理跨域的方法1 -- 代理(這個(gè)方法比較“笨” 故不做詳細(xì)介紹)

比如在北京(www.beijing.com/sever.php)和上海(www.shanghai.com/sever.php)各有一個(gè)服務(wù)器,北京的后端(www.beijing.com/sever.php)直接訪(fǎng)問(wèn)上海的服務(wù),然后把獲取的響應(yīng)值返回給前端。也就是北京的服務(wù)在后臺(tái)做了一個(gè)代理,前端只需要訪(fǎng)問(wèn)北京的服務(wù)器也就相當(dāng)與訪(fǎng)問(wèn)了上海的服務(wù)器。這種代理屬于后臺(tái)的技術(shù),所以不展開(kāi)敘述。

三、處理跨域的方法2 -- JSONP

假設(shè)在http://www.aaa.com/index.php這個(gè)頁(yè)面中向http://www.bbb.com/getinfo.php提交GET請(qǐng)求,那么我們?cè)趙ww.aaa.com頁(yè)面中添加如下代碼:

? 1 2 3 4 5 6 7   var eleScript= document.createElement("script"); //創(chuàng)建一個(gè)script元素     eleScript.type = "text/javascript"; //聲明類(lèi)型、     eleScript.src = "http://www.bbb.com/getinfo.php"; //添加src屬性 引入跨域訪(fǎng)問(wèn)的url     document.getElementsByTagName("HEAD")[0].appendChild(eleScript); //在頁(yè)面中添加新創(chuàng)建的script元素

當(dāng)GET請(qǐng)求從http://www.bbb.com/getinfo.php返回時(shí),可以返回一段JavaScript代碼,這段代碼會(huì)自動(dòng)執(zhí)行,可以用來(lái)負(fù)責(zé)調(diào)用http://www.aaa.com/index.php頁(yè)面中的一個(gè)callback函數(shù)。看下面一個(gè)列子:

在www.aaa.com頁(yè)面中:

? 1 2 3 4 5 6 7 8 9 10 11 <script>     function jsonp( json ){       document.write( json.name ); //輸出周星馳   }   <script>   <script src="http://www.bbb.com/getinfo.php"></script>

在www.bbb.com頁(yè)面中:

  jsonp({ "name":"周星馳","age":45 });

也就是在www.aaa.com頁(yè)面中聲明,在www.bbb.com頁(yè)面中調(diào)用。但是JSONP只支持 “GET” 請(qǐng)求,但不支持 “POST” 請(qǐng)求。

三、處理跨域的方法2 -- XHR2(推薦方法)

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 玉林市| 定边县| 印江| 紫阳县| 福安市| 龙井市| 依兰县| 丹巴县| 霸州市| 桐柏县| 邢台市| 泰宁县| 晋宁县| 满洲里市| 丽水市| 洛扎县| 通山县| 潍坊市| 嘉定区| 关岭| 万山特区| 韩城市| 常熟市| 丰镇市| 威远县| 阿拉善右旗| 四子王旗| 琼海市| 土默特右旗| 无锡市| 敦化市| 沈阳市| 柳林县| 左权县| 桑日县| 临海市| 北流市| 榕江县| 广宗县| 时尚| 皮山县|