亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > HTML > 正文

HTML5 Web緩存和運(yùn)用程序緩存(cookie,session)

2024-08-26 00:20:17
字體:
供稿:網(wǎng)友

在介紹HTML5 web緩存前,來認(rèn)識一下cookie和session:

session:

由于HTTP是無狀態(tài)的,你是誰?你干了什么?抱歉服務(wù)器都是不知道的。

因此session(會話)出現(xiàn)了,它會在服務(wù)器上存儲用戶信息以便將來使用(比如用戶名稱,購物車購買商品等)。

但是session是臨時的,用戶離開網(wǎng)站將被刪除。如果要永久存儲信息,可以保存在數(shù)據(jù)庫中!

session工作原理:為每個用戶創(chuàng)建一個session id(核心?。。。?。而session id是存儲在cookie中的,也就是說如果瀏覽器禁用了cookie,那么session會失效?。ǖ强梢酝ㄟ^其它方式實(shí)現(xiàn),如:通過URL傳遞session id)

用戶驗證一般采用session。

cookie:

目的:網(wǎng)站標(biāo)記用戶身份而存儲在本地客戶端的數(shù)據(jù)(通常經(jīng)過加密)。

  1. 用戶訪問網(wǎng)頁時,名字記錄在cookie中;
  2. 下次繼續(xù)訪問該網(wǎng)頁時,可以從cookie中讀取用戶訪問記錄。

cookie會在同源的http請求攜帶(即使不需要),即在客戶端和服務(wù)器之間來回傳遞!

cookie的數(shù)據(jù)大小不超過4k

cookie的有效期:設(shè)置的cookie有效時間之前一直有效,即使瀏覽器關(guān)閉!

localStorage & sessionStorage:

早期,本地緩存普遍使用的是cookie,但是web存儲需要更安全、更快速!

這些數(shù)據(jù)不會保存在服務(wù)器上(存儲在客戶端),不會影響服務(wù)器性能!

sessionStorage和localStorage數(shù)據(jù)存儲也有大小限制,但卻比cookie大得多,可以達(dá)到5M甚至更大!

localStorage:沒有時間限制的數(shù)據(jù)存儲!

sessionStorage:由英文意思也可知,它是對session的數(shù)據(jù)存儲,所以在用戶關(guān)閉瀏覽器(標(biāo)簽頁/窗口)后,數(shù)據(jù)被刪除!

HTML5 web存儲支持情況:

IE8以上,現(xiàn)代瀏覽器。

數(shù)據(jù)以鍵值對存儲:

localStorage和sessionStorage都有以下幾個方法:

  1. localStorage.setItem(key,value):設(shè)置(保存)數(shù)據(jù);相當(dāng)于localStorage.key=value!
  2. localStorage.getItem(key):獲取數(shù)據(jù)
  3. localStorage.removeItem(key):刪除單個數(shù)據(jù)
  4. localStorage.clear():刪除所有數(shù)據(jù)
  5. localStorage.key(index):獲取某個索引的鍵值
<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <meta http-equiv="X-UA-Compatible" content="ie=edge">    <title>web storage</title></head><body>    <div id="test"></div>    <script>        if (typeof (Storage) != undefined) {            localStorage.name = 'xiao ming';            localStorage.setItem('name1', 'Apple');            document.getElementById('test').innerHTML = "you are: " + localStorage.name;            console.log("first:" + localStorage.name1 + "," + localStorage.key(0));            localStorage.removeItem('name1');            console.log("second: " + localStorage.name1);            console.log("third: " + localStorage.getItem('name'));            localStorage.clear();            console.log("last:" + localStorage.name);        } else {            document.getElementById('test').innerHTML = "更新瀏覽器吧!目前瀏覽器不支持stroage";        }            </script></body></html>

程序運(yùn)行結(jié)果:

HTML5,Web緩存,運(yùn)用程序緩存,cookie,session

注意:鍵值對是以字符串保存的,根據(jù)需求應(yīng)改變類型(比如做加法,變?yōu)镹umber型)。

 HTML5運(yùn)用程序緩存(Application Cache):

通過創(chuàng)建cache manifest文件,web運(yùn)用可被緩存,并且無網(wǎng)絡(luò)狀態(tài)可以進(jìn)行訪問!

Application Cache優(yōu)勢:

1.離線瀏覽;
2.速度更快:已緩存資源加載更快;
3.減少瀏覽器負(fù)載:客戶端將只從服務(wù)器下載或更新更改過的資源

支持情況:

IE10以上,現(xiàn)代瀏覽器。

使用:

<!DOCTYPE html><html manifest="demo.appcache"></html>

注意:要開啟application cache,需指定manifest屬性(擴(kuò)展名:.appcache);如果未指定manifest屬性,頁面不會緩存(除非在manifest文件中直接指定了該頁面?。?/p>

manifest文件在服務(wù)器上需正確的配置MIME-type:text/cache-manifest。

Manifest文件:

manifest是簡單的文本文件,它告知瀏覽器被緩存的內(nèi)容以及不被緩存的內(nèi)容!

manifest可分為三部分:

CACHE MANIFEST:此項列出的文件將在首次下載后進(jìn)行緩存!

NETWORK:此項列出的文件需要與服務(wù)器進(jìn)行網(wǎng)絡(luò)連接,不會被緩存!

FALLBACK:此項列出當(dāng)頁面無法訪問時的回退頁面(如:404頁面)!

test.appcache:

CACHE MANIFEST#2017 11 21 v10.0.1/test.css/logo.gif/main.jsNETWORK/login.php/register.phpFALLBACK#/html/目錄中文件無法訪問時,用/offline.html替代/html/ /offline.html

更新application cache的情況:
1.用戶清空瀏覽器緩存!
2.manifest文件被更改(#:表示注釋,同時如果更改為#2018 1 1 v20.0.0,則瀏覽器會重新緩存?。?br /> 3.程序進(jìn)行更新application cache!

Web Workers:

web workers是運(yùn)行在后臺的javascript,獨(dú)立于其它腳本,不會影響頁面性能!

而一般的HTML頁面上執(zhí)行腳本時,除非腳本加載完成,否則頁面不會響應(yīng)!

支持情況:IE10以上,現(xiàn)代瀏覽器

示例:html文件:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <meta http-equiv="X-UA-Compatible" content="ie=edge">    <title>web worker</title></head><body>    <p>計數(shù):<output id="count"></output></p>    <button onclick="startWorker()">開始</button>    <button onclick="overWorker()">結(jié)束</button>    <script>        var w;        function startWorker(){            // 檢測瀏覽器是否支持web worker            if(typeof(Worker)!=='undefined'){                if(typeof(w)=='undefined'){                    //創(chuàng)建web worker對象                    w=new Worker('testWorker.js');                }                // 事件持續(xù)監(jiān)聽(即使外部腳本已經(jīng)完成),除非被終止                w.onmessage=function(event){                    document.getElementById('count').innerHTML=event.data;                };            }else{                document.getElementById('count').innerHTML='瀏覽器不支持web worker';            }        }        function overWorker() {            // 終止web worker對象,釋放瀏覽器/計算機(jī)資源            w.terminate();            w=undefined;        }    </script></body></html>

testWorker.js文件:

var i=0;function timedCount() {    i+=1;    // 重要的部分,向html頁面?zhèn)骰匾欢涡畔?   postMessage(i);    setTimeout('timedCount()',500);}timedCount();

注意1:通常web worker不是用于如此簡單的任務(wù),而是用在更耗CPU資源的任務(wù)!

注意2:在chrome中運(yùn)行會產(chǎn)生“cannot be accessed from origin 'null'”的錯誤,我的解決方法是:xampp中開啟apache,用http://localhost/進(jìn)行訪問。

web worker缺點(diǎn):

由于web worker位于外部文件中,所以它無法訪問下列javascript對象:

  1. window對象;
  2. document對象;
  3. parent對象。

HTML5 server-sent events(服務(wù)器發(fā)送事件):

server-sent事件是單向信息傳遞;網(wǎng)頁可以自動獲取來自服務(wù)器的更新!

以前:網(wǎng)頁先詢問是否有可用的更新,服務(wù)器發(fā)送數(shù)據(jù),進(jìn)行更新(雙向數(shù)據(jù)傳遞)!

支持情況:除IE以外的現(xiàn)代瀏覽器均支持!

示例代碼:html文件:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <meta http-equiv="X-UA-Compatible" content="ie=edge">    <title>sever sent event</title></head><body>    <p>sever sent event informations</p>    <div id="test"></div>    <script>        // 判斷瀏覽器是否支持EventSource        if(typeof(EventSource)!==undefined){            // 創(chuàng)建EventSource對象            var source=new EventSource("test.php");            // 事件監(jiān)聽            source.onmessage=function(event){                document.getElementById('test').innerHTML+=event.data+"<br>";            };        }else{            document.getElementById('test').innerHTML="sorry,瀏覽器不支持server sent event";        }    </script></body></html>

test.php:

<?phpheader('Content-Type:text/event-stream');header('Cache-Control:no-cache');$time=date('r');echo "data:The server time is: {$time} /n/n";// 刷新輸出數(shù)據(jù)flush();

注意:后面沒有內(nèi)容,php文件可以不用"?>"關(guān)閉!

HTML5 WebSocket:

  1. WebSocket是HTML5提供的一種在單個TCP連接上建立全雙工(類似電話)通訊的協(xié)議;
  2. 瀏覽器和服務(wù)器之間只需要進(jìn)行一次握手的操作,瀏覽器和服務(wù)器之間就形成了一條快速通道,兩者之間就可直接進(jìn)行數(shù)據(jù)傳送;
  3. 瀏覽器通過javascript建立WebSocket連接請求,通過send()向服務(wù)器發(fā)送數(shù)據(jù),onmessage()接收服務(wù)器返回的數(shù)據(jù)。

 WebSocket如何兼容低瀏覽器:

  1. Adobe Flash Socket;
  2. ActiveX HTMLFile(IE);
  3. 基于multipart編碼發(fā)送XHR;
  4. 基于長輪詢的XHR

WebSocket可以用在多個標(biāo)簽頁之間的通信!

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到HTML教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
一区二区xxx| 91精品国产综合久久国产大片| 午夜欧美2019年伦理| 国产香蕉一区二区三区| 久久久久久美女精品| 精品视频—区二区三区免费| 国产精品一级伦理| 国产69精品久久久| 欧美另类极品videosbest视频| 欧美日韩国产成人在线| 日韩av手机版| 日本一道本视频| 国产精品v欧美精品v日本精品动漫| 免费看a级黄色片| 国产精品国产馆在线真实露脸| 2019国产精品自在线拍国产不卡| 国产一级一片免费播放| 中文字幕在线观看播放| 国产另类第一区| 二区三区四区高清视频在线观看| 日本黄色免费| 少妇太紧太爽又黄又硬又爽| 国产一区日韩一区| 国产不卡av在线免费观看| 丰满少妇在线观看资源站| 亚洲日本中文字幕| 粉嫩欧美一区二区三区| 中文av一区二区三区| 日本高清视频在线观看| 欧美日韩高清一区| 久久99国产精品免费| 精品国产一区二区三区不卡在线| 色婷婷综合网| 欧美精品一区二区三区四区| 裸体一区二区三区| 久久福利小视频| 国产精品四虎| 99自拍视频在线| 国模精品视频一区二区| 欧美日韩在线一区二区三区| 国产精品网站导航| 国产一级做a爰片久久| 欧美黄色免费影院| 欧美一区二区在线免费播放| 一二三四社区在线视频| 精品视频在线观看免费观看| 无码人妻熟妇av又粗又大| 日韩三级视频在线观看| 精品国产乱码久久久久久夜甘婷婷| 国产对白videos麻豆高潮| 五月激情六月丁香| 久久精品2019中文字幕| 精品处破学生在线二十三| 亚洲综合av一区二区三区| 日韩欧美一区二区三区不卡视频| eeuss影院www在线观看| 久久久久久国产精品三级玉女聊斋| 国产av一区二区三区| 国产欧美一区二区三区视频| 亚洲精品在线免费看| 日韩欧美在线观看一区二区| 日韩美女视频网站| 一区二区中文字幕在线| 日本一区二区免费电影| 日韩一二三四| √最新版天堂资源网在线| 国产另类ts人妖一区二区| 99c视频在线| 和岳每晚弄的高潮嗷嗷叫视频| 欧美人成在线观看| 日本亚洲欧洲精品| 男男激情在线| 亚洲无线码在线一区观看| 国产在线免费看| 国产精品我不卡| 欧美精品一区二区三区蜜桃视频| 国产色噜噜噜91在线精品| 国产精品丝袜久久久久久高清| 午夜国产精品理论片久久影院| 午夜网站在线观看| 日韩精品一区二区亚洲av| 久久精品美女| 中文字幕一区二区三区四| 羞羞视频在线观看不卡| 日韩精品www| 亚洲高清福利视频| 欧美经典一区二区三区| 国产亚洲女人久久久久毛片| 午夜天堂影视香蕉久久| 91精品国产经典在线观看| 欧美影院一区| 悠悠资源av网站| 日本一区二区三区免费看| 成人影院在线观看视频| 亚洲天堂电影在线观看| 国产美女扒开尿口久久久| 久久99久久99精品免视看婷婷| 两个人看的无遮挡免费视频| 在线视频福利一区| 一区二区三区波多野结衣在线观看| 中文字幕在线观看你懂的| 日本乱码一区二区三区不卡| 亚洲日本欧美中文幕| 精品一区电影| 欧美在线中文字幕| 香蕉av一区| 欧美日韩在线高清| 英国三级经典在线观看| 中文字幕精品影院| 亚洲第一主播视频| 日韩一区二区三区xxxx| 国产欧美88| 一级片视频免费看| 五月天婷亚洲天综合网鲁鲁鲁| 亚洲精品aⅴ中文字幕乱码| 中文子幕无线码一区tr| 国产黄在线免费观看| 国产又爽又黄又刺激的软件| 国产成人97精品免费看片| 欧美性videosxxxxx| 亚洲欧美制服第一页| 欧美视频在线观看一区| 国产久一道中文一区| 欧美美女bb生活片| 精品国产一区二区三区四区| 91福利精品第一导航| 亚洲精品国偷自产在线99热| 日韩一区二区免费电影| 一个人看的www视频免费在线观看| 免费在线视频观看| 成人欧美一区二区三区小说| 我的公把我弄高潮了视频| 你懂的在线视频观看| 国产一区二区三区视频| 五月天激情视频在线观看| 黑人巨大精品一区二区在线| 久久精品国产亚洲精品| 欧美夫妇交换xxx| 久久精品国产亚洲高清剧情介绍| 日韩天堂在线视频| 天天躁夜夜躁狠狠是什么心态| 亚欧洲精品在线视频| 3d动漫精品啪啪一区二区下载| 亚洲破处大片| 青青久草在线| 中文字幕无人区二| 黄色三级在线| 欧美激情视频免费观看| 久久国产黄色片| 视色,视色影院,视色影库,视色网| 秋霞在线观看av| 亚洲av无码一区二区二三区| 国产精品中文字幕日韩精品| 欧美暴力喷水在线| 日本三日本三级少妇三级66| 一区二区三区人妻| 一级片在线观看视频| 麻豆视频在线播放| 高清国产福利在线观看| 999在线免费观看视频| 三级亚洲高清视频| 国产少妇在线观看| 久艹在线免费观看| 国产一区二区三区直播精品电影| 亚洲精品网站在线观看| 国产特级嫩嫩嫩bbb| 欧美激情喷水视频| 精品人妻无码一区二区性色| 亚洲人精品午夜在线观看| 日本欧美中文字幕| eeuss影院在线播放| av福利导福航大全在线| 激情都市亚洲| 8x8x成人免费视频| 日韩天堂av| 成人另类视频| 97在线免费视频观看| 夜色资源站国产www在线视频| 成人毛片视频免费看| 欧美福利一区二区| 成人污版视频| 亚洲a视频在线观看| 中文字幕免费一区二区三区| 一级黄色录像大片| 成人黄色大片在线观看| 骚虎黄色影院| 欧美日韩中文国产| 丝袜脚交免费网站xx| 日韩高清免费av| 亚洲第一视频在线| 成人无遮挡免费网站视频在线观看| 免费观看在线综合色| 91亚洲欧美激情| 国产成a人亚洲精v品无码| 国内精品久久久久久久久久久| 日韩美女在线看免费观看| 91香蕉视频在线| av网站在线免费看| 成人不用播放器| 成人蜜臀av电影| 欧美日韩精品是欧美日韩精品| 日韩中文字幕观看| 国产精品无码一区二区三| 18视频在线观看网站| eeuss影院在线观看| 亚洲av成人无码一二三在线观看| 欧美aaa大片视频一二区| 97精品视频在线播放| 中国xxxx视频播放50| 丁香婷婷综合激情| 国产成人精品一区二| 777电影在线观看| 成人在线短视频| 盗摄系列偷拍视频精品tp| 99视频国产精品免费观看| 在线精品视频视频中文字幕| 福利一区二区免费视频| 亚洲啪啪aⅴ一区二区三区9色| 天天骑天天射| 日本夜夜草视频网站| 欧美成人性生活| 亚洲xxxx3d| 日韩欧美中文| 污污污污污污www网站免费| 成人黄色免费在线观看| 亚洲免费三区一区二区| 羞羞的网站在线观看| 四虎精品一区二区免费| 国产日韩精品视频一区| 成人三级视频在线观看| 国产综合色香蕉精品| 国产欧美精品xxxx另类| 国产视频精品久久| 手机看片久久| 亚洲国产一区二区三区高清| 中文字幕大看焦在线看| 免费精品一区二区三区在线观看| 欧洲免费在线视频| 美女视频一区| 亚洲精品18在线观看| 久久精品午夜| 天天干天天舔天天操| 在线视频免费一区二区| 国产精品久久久久一区二区三区共| siro系绝美精品系列| 在线免费视频福利| 亚洲精品资源在线| 欧美亚洲视频在线看网址| 春意影院免费入口| 伊人影院蕉久影院在线播放| 亚洲精品成人悠悠色影视| 亚洲天堂精品在线观看| 精品国产一级毛片| 午夜国产在线视频| 国产探花在线精品一区二区| 欧美日韩国产三区| 中文字幕一区二区三区乱码不卡| 久久久精品日韩| 成人免费视频入口| 午夜精品久久久久久久久久久久久蜜桃| 国内精品久久久久国产| 色婷婷综合久久久久| 欧美一级免费片| 激情综合五月天| 欧美激情精品久久久久久蜜臀| 97香蕉超级碰碰久久免费的优势| 国产精品视频久久久久| 国产第一页第二页| 色多多视频网站| 国产精品视频xxxx| 国产视频一二三| 国产精品久久久久久99| 宇都宫紫苑在线播放| 亚洲一区中文日韩| 韩国一级黄色录像| 欧美夫妻性生活视频| 四虎成人免费视频| 精品无码人妻一区二区三| 香蕉久久精品日日躁夜夜躁| 好男人中文字幕官网| 99国产视频| 成人av动漫在线观看| 色婷婷中文字幕| 久草在线新免费首页资源站| 日韩欧美在线中文字幕| 岛国av一区二区三区| 国产亚洲精品久久久久久打不开| 洋洋av久久久久久久一区| 亚洲国产女人aaa毛片在线| 桃乃木香奈和黑人aⅴ在线播放| 欧美激情黑人| 国产精品一区不卡| 国产精品毛片a∨一区二区三区| 亚洲精品在线视频播放| 国产精品国产精品国产专区不蜜| 性猛交富婆╳xxx乱大交天津| 中文字幕有码热在线视频| 久久久国产一区二区三区| 这里都是精品| 日韩电影第一页| 黑人欧美xxxx| japanese国产| 亚洲s码欧洲m码国产av| 亚洲一区二区免费| 91精品1区2区| 老熟妇高潮一区二区三区| 色爱综合网站| 疯狂撞击丝袜人妻| 国产影视一区二区| 在线观看日本一区二区| 欧美黑人性受xxxx精品| 亚洲欧美中文日韩在线| 91啪九色porn原创视频在线观看| 污网站在线观看免费| 毛片在线看片| av片免费观看| 福利在线网站| 国产精品乱看| 成人免费网站www网站高清| 色综合久久综合中文综合网| 欧美视频裸体精品| 国产精品网站在线播放| 一区二区av| 天天躁日日躁aaaa视频| 国产真实乱子伦精品视频| 麻豆视频免费在线观看| xxxxx在线观看| 一本色道**综合亚洲精品蜜桃冫|