最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS常用知識(shí)點(diǎn)整理

 更新時(shí)間:2017年01月21日 10:40:58   作者:前端菜鳥進(jìn)階中  
本篇文章主要介紹了javascript的知識(shí)點(diǎn)。具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧

1.CORS

CORS(Corss-Origin Resource Sharing,跨資源共享),基本思想是使用自定義的HTTP頭部讓瀏覽器與服務(wù)器進(jìn)行溝通,從而決定請(qǐng)求或響應(yīng)的成功或失敗。即給請(qǐng)求附加一個(gè)額外的Origin頭部,其中包含請(qǐng)求頁(yè)面的源信息(協(xié)議、域名和端口),以便服務(wù)器根據(jù)這個(gè)頭部決定是否給予響應(yīng)。

2.document.domain

將頁(yè)面的document.domain設(shè)置為相同的值,頁(yè)面間可以互相訪問對(duì)方的JavaScript對(duì)象。

注意:

不能將值設(shè)置為URL中不包含的域;

松散的域名不能再設(shè)置為緊繃的域名。

3.圖像Ping

var img=new Image();
img.onload=img.onerror=function(){
... ...
}
img.src="url?name=value";

請(qǐng)求數(shù)據(jù)通過查詢字符串的形式發(fā)送,響應(yīng)可以是任意內(nèi)容,通常是像素圖或204響應(yīng)。

圖像Ping最常用于跟蹤用戶點(diǎn)擊頁(yè)面或動(dòng)態(tài)廣告曝光次數(shù)。

缺點(diǎn):

只能發(fā)送GET請(qǐng)求;

無(wú)法訪問服務(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)時(shí)應(yīng)該在頁(yè)面中調(diào)用的函數(shù),其名字一般在請(qǐng)求中指定。

數(shù)據(jù)是傳入回調(diào)函數(shù)中的JSON數(shù)據(jù)。

優(yōu)點(diǎn):

能夠直接訪問響應(yīng)文本,可用于瀏覽器與服務(wù)器間的雙向通信。

缺點(diǎn):

JSONP從其他域中加載代碼執(zhí)行,其他域可能不安全;

難以確定JSONP請(qǐng)求是否失敗。

5.Comet

Comet可實(shí)現(xiàn)服務(wù)器向?yàn)g覽器推送數(shù)據(jù)。

Comet是實(shí)現(xiàn)方式:長(zhǎng)輪詢和流

短輪詢即瀏覽器定時(shí)向服務(wù)器發(fā)送請(qǐng)求,看有沒有數(shù)據(jù)更新。

長(zhǎng)輪詢即瀏覽器向服務(wù)器發(fā)送一個(gè)請(qǐng)求,然后服務(wù)器一直保持連接打開,直到有數(shù)據(jù)可發(fā)送。發(fā)送完數(shù)據(jù)后,瀏覽器關(guān)閉連接,隨即又向服務(wù)器發(fā)起一個(gè)新請(qǐng)求。其優(yōu)點(diǎn)是所有瀏覽器都支持,使用XHR對(duì)象和setTimeout()即可實(shí)現(xiàn)。

流即瀏覽器向服務(wù)器發(fā)送一個(gè)請(qǐng)求,而服務(wù)器保持連接打開,然后周期性地向?yàn)g覽器發(fā)送數(shù)據(jù),頁(yè)面的整個(gè)生命周期內(nèi)只使用一個(gè)HTTP連接。

6.WebSocket

WebSocket可在一個(gè)單獨(dú)的持久連接上提供全雙工、雙向通信。

WebSocket使用自定義協(xié)議,未加密的連接時(shí)ws://;加密的鏈接是wss://。

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

注意:

必須給WebSocket構(gòu)造函數(shù)傳入絕對(duì)URL;

WebSocket可以打開任何站點(diǎn)的連接,是否會(huì)與某個(gè)域中的頁(yè)面通信,完全取決于服務(wù)器;

WebSocket只能發(fā)送純文本數(shù)據(jù),對(duì)于復(fù)雜的數(shù)據(jù)結(jié)構(gòu),在發(fā)送之前必須進(jìn)行序列化JSON.stringify(message))。

優(yōu)點(diǎn):

在客戶端和服務(wù)器之間發(fā)送非常少的數(shù)據(jù),減少字節(jié)開銷。

以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!

相關(guān)文章

最新評(píng)論

湛江市| 祁连县| 温泉县| 会同县| 特克斯县| 内江市| 丁青县| 抚远县| 大理市| 五常市| 大兴区| 新绛县| 云梦县| 噶尔县| 扶沟县| 海口市| 仁布县| 故城县| 攀枝花市| 宝鸡市| 健康| 达拉特旗| 筠连县| 集贤县| 临桂县| 连城县| 沂水县| 方正县| 宁都县| 突泉县| 封丘县| 巍山| 新丰县| 宜昌市| 宿州市| 福鼎市| 克拉玛依市| 邻水| 汨罗市| 锦州市| 阿图什市|