JS

1.CORS
CORS(Corss-Origin Resource Sharing,跨資源共享),基本思想是使用自定義的HTTP頭部讓瀏覽器與服務(wù)器進(jìn)行溝通棚菊,從而決定請求或響應(yīng)的成功或失敗浸踩。即給請求附加一個額外的Origin頭部,其中包含請求頁面的源信息(協(xié)議统求、域名和端口)检碗,以便服務(wù)器根據(jù)這個頭部決定是否給予響應(yīng)。
2.document.domain
將頁面的document.domain設(shè)置為相同的值码邻,頁面間可以互相訪問對方的JavaScript對象折剃。
注意:
不能將值設(shè)置為URL中不包含的域;
松散的域名不能再設(shè)置為緊繃的域名像屋。
3.圖像Ping

var  img=new Image();

img.onload=img.onerror=function(){
     ...
}

img.src="url?name=value";

請求數(shù)據(jù)通過查詢字符串的形式發(fā)送怕犁,響應(yīng)可以是任意內(nèi)容,通常是像素圖或204響應(yīng)己莺。
圖像Ping最常用于跟蹤用戶點(diǎn)擊頁面或動態(tài)廣告曝光次數(shù)因苹。
缺點(diǎn):
只能發(fā)送GET請求;
無法訪問服務(wù)器的響應(yīng)文本篇恒,只能用于瀏覽器與服務(wù)器間的單向通信扶檐。
4.Jsonp

var script=document.createElement("script");

script.src="url?callback=handleResponse";

document.body.insertBefore(script,document.body.firstChild);

JSONP由兩部分組成:回調(diào)函數(shù)和數(shù)據(jù)
回調(diào)函數(shù)是接收到響應(yīng)時應(yīng)該在頁面中調(diào)用的函數(shù),其名字一般在請求中指定胁艰。
數(shù)據(jù)是傳入回調(diào)函數(shù)中的JSON數(shù)據(jù)款筑。
優(yōu)點(diǎn):
能夠直接訪問響應(yīng)文本,可用于瀏覽器與服務(wù)器間的雙向通信腾么。
缺點(diǎn):
JSONP從其他域中加載代碼執(zhí)行奈梳,其他域可能不安全;
難以確定JSONP請求是否失敗解虱。
5.Comet
Comet可實現(xiàn)服務(wù)器向瀏覽器推送數(shù)據(jù)攘须。
Comet是實現(xiàn)方式:長輪詢和流
短輪詢即瀏覽器定時向服務(wù)器發(fā)送請求,看有沒有數(shù)據(jù)更新殴泰。
長輪詢即瀏覽器向服務(wù)器發(fā)送一個請求于宙,然后服務(wù)器一直保持連接打開浮驳,直到有數(shù)據(jù)可發(fā)送。發(fā)送完數(shù)據(jù)后捞魁,瀏覽器關(guān)閉連接至会,隨即又向服務(wù)器發(fā)起一個新請求。其優(yōu)點(diǎn)是所有瀏覽器都支持谱俭,使用XHR對象和setTimeout()即可實現(xiàn)奉件。
流即瀏覽器向服務(wù)器發(fā)送一個請求,而服務(wù)器保持連接打開昆著,然后周期性地向瀏覽器發(fā)送數(shù)據(jù)县貌,頁面的整個生命周期內(nèi)只使用一個HTTP連接。
6.WebSocket
WebSocket可在一個單獨(dú)的持久連接上提供全雙工凑懂、雙向通信窃这。
WebSocket使用自定義協(xié)議,未加密的連接時ws://征候;加密的鏈接是wss://。

var webSocket=new WebSocket("[ws://](ws:)");
webSocket.send(message);
webSocket.onmessage=function(event){
 var data=event.data;
        ... ....
}

注意:
必須給WebSocket構(gòu)造函數(shù)傳入絕對URL祟敛;
WebSocket可以打開任何站點(diǎn)的連接疤坝,是否會與某個域中的頁面通信,完全取決于服務(wù)器馆铁;
WebSocket只能發(fā)送純文本數(shù)據(jù)跑揉,對于復(fù)雜的數(shù)據(jù)結(jié)構(gòu),在發(fā)送之前必須進(jìn)行序列化JSON.stringify(message))埠巨。
優(yōu)點(diǎn):
在客戶端和服務(wù)器之間發(fā)送非常少的數(shù)據(jù)历谍,減少字節(jié)開銷。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末辣垒,一起剝皮案震驚了整個濱河市望侈,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌勋桶,老刑警劉巖脱衙,帶你破解...
    沈念sama閱讀 216,919評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異例驹,居然都是意外死亡捐韩,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評論 3 392
  • 文/潘曉璐 我一進(jìn)店門鹃锈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來荤胁,“玉大人,你說我怎么就攤上這事屎债〗稣” “怎么了垢油?”我有些...
    開封第一講書人閱讀 163,316評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長已旧。 經(jīng)常有香客問我秸苗,道長,這世上最難降的妖魔是什么运褪? 我笑而不...
    開封第一講書人閱讀 58,294評論 1 292
  • 正文 為了忘掉前任惊楼,我火速辦了婚禮,結(jié)果婚禮上秸讹,老公的妹妹穿的比我還像新娘檀咙。我一直安慰自己,他們只是感情好璃诀,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,318評論 6 390
  • 文/花漫 我一把揭開白布弧可。 她就那樣靜靜地躺著,像睡著了一般劣欢。 火紅的嫁衣襯著肌膚如雪棕诵。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,245評論 1 299
  • 那天凿将,我揣著相機(jī)與錄音校套,去河邊找鬼。 笑死牧抵,一個胖子當(dāng)著我的面吹牛笛匙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播犀变,決...
    沈念sama閱讀 40,120評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼妹孙,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了获枝?” 一聲冷哼從身側(cè)響起蠢正,我...
    開封第一講書人閱讀 38,964評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎省店,沒想到半個月后机隙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,376評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡萨西,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,592評論 2 333
  • 正文 我和宋清朗相戀三年有鹿,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谎脯。...
    茶點(diǎn)故事閱讀 39,764評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡葱跋,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情娱俺,我是刑警寧澤稍味,帶...
    沈念sama閱讀 35,460評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站荠卷,受9級特大地震影響模庐,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜油宜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,070評論 3 327
  • 文/蒙蒙 一掂碱、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧慎冤,春花似錦疼燥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至披诗,卻和暖如春撬即,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背呈队。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評論 1 269
  • 我被黑心中介騙來泰國打工剥槐, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人掂咒。 一個月前我還...
    沈念sama閱讀 47,819評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像迈喉,于是被迫代替她去往敵國和親绍刮。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,665評論 2 354

推薦閱讀更多精彩內(nèi)容