国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 馆陶县| 东方市| 宜宾县| 桂东县| 霸州市| 云安县| 江山市| 长岭县| 榕江县| 福海县| 义马市| 林芝县| 长兴县| 德保县| 申扎县| 泾源县| 太保市| 肥西县| 克拉玛依市| 高碑店市| 麻阳| 蓬莱市| 绥棱县| 综艺| 文山县| 赤壁市| 维西| 清水河县| 江西省| 临朐县| 玉山县| 鹤山市| 清镇市| 临颍县| 饶河县| 交口县| 博客| 嘉祥县| 乳源| 玉林市| 城市|