CORS(Corss-Origin Resource Sharing,跨資源共享),基本思想是使用自定義的HTTP頭部讓瀏覽器與服務器進行溝通,從而決定請求或響應的成功或失敗。即給請求附加一個額外的Origin頭部,其中包含請求頁面的源信息(協(xié)議、" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁 > 營銷資訊 > 建站知識 > js跨域獲取數(shù)據(jù)的描述

js跨域獲取數(shù)據(jù)的描述

時間:2023-01-31 22:12:02 | 來源:建站知識

時間:2023-01-31 22:12:02 來源:建站知識

1.CORS

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

2.document.domain

將頁面的document.domain設置為相同的值,頁面間可以互相訪問對方的JavaScript對象。

注意:

不能將值設置為URL中不包含的域;

松散的域名不能再設置為緊繃的域名。

3.圖像Ping

var img=new Image();

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

... ...

}

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

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

圖像Ping最常用于跟蹤用戶點擊頁面或動態(tài)廣告曝光次數(shù)。

缺點:

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

無法訪問服務器的響應文本,只能用于瀏覽器與服務器間的單向通信。

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ù)是接收到響應時應該在頁面中調(diào)用的函數(shù),其名字一般在請求中指定。

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

優(yōu)點:

能夠直接訪問響應文本,可用于瀏覽器與服務器間的雙向通信。

缺點:

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

難以確定JSONP請求是否失敗。

5.Comet

Comet可實現(xiàn)服務器向瀏覽器推送數(shù)據(jù)。

Comet是實現(xiàn)方式:長輪詢和流

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

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

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

6.WebSocket

WebSocket可在一個單獨的持久連接上提供全雙工、雙向通信。


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

var webSocket=new WebSocket("ws://");

webSocket.send(message);

webSocket.onmessage=function(event){

var data=event.data;

... ....

}

注意:

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

WebSocket可以打開任何站點的連接,是否會與某個域中的頁面通信,完全取決于服務器;

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

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

關鍵詞:數(shù)據(jù),獲取

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點擊下載Chrome瀏覽器
關閉