婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > HTML5 Web緩存和運用程序緩存(cookie,session)

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

熱門標簽:四川點撥外呼系統 電銷機器人電話用什么卡 黃島區地圖標注 江蘇智能電銷機器人哪家好 南寧點撥外呼系統哪家公司做的好 成都智能外呼系統平臺 當涂高德地圖標注 鎮江智能外呼系統有效果嗎 云南大理400電話申請官方

在介紹HTML5 web緩存前,來認識一下cookie和session:

session:

由于HTTP是無狀態的,你是誰?你干了什么?抱歉服務器都是不知道的。

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

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

session工作原理:為每個用戶創建一個session id(核心!!!)。而session id是存儲在cookie中的,也就是說如果瀏覽器禁用了cookie,那么session會失效!(但是可以通過其它方式實現,如:通過URL傳遞session id)

用戶驗證一般采用session。

cookie:

目的:網站標記用戶身份而存儲在本地客戶端的數據(通常經過加密)。

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

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

cookie的數據大小不超過4k

cookie的有效期:設置的cookie有效時間之前一直有效,即使瀏覽器關閉!

localStorage & sessionStorage:

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

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

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

localStorage:沒有時間限制的數據存儲!

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

HTML5 web存儲支持情況:

IE8以上,現代瀏覽器。

數據以鍵值對存儲:

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

  1. localStorage.setItem(key,value):設置(保存)數據;相當于localStorage.key=value!
  2. localStorage.getItem(key):獲取數據
  3. localStorage.removeItem(key):刪除單個數據
  4. localStorage.clear():刪除所有數據
  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>

程序運行結果:

注意:鍵值對是以字符串保存的,根據需求應改變類型(比如做加法,變為Number型)。

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

通過創建cache manifest文件,web運用可被緩存,并且無網絡狀態可以進行訪問!

Application Cache優勢:

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

支持情況:

IE10以上,現代瀏覽器。

使用:

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

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

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

Manifest文件:

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

manifest可分為三部分:

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

NETWORK:此項列出的文件需要與服務器進行網絡連接,不會被緩存!

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

test.appcache:

CACHE MANIFEST
#2017 11 21 v10.0.1
/test.css
/logo.gif
/main.js

NETWORK
/login.php
/register.php

FALLBACK
#/html/目錄中文件無法訪問時,用/offline.html替代
/html/ /offline.html

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

Web Workers:

web workers是運行在后臺的javascript,獨立于其它腳本,不會影響頁面性能!

而一般的HTML頁面上執行腳本時,除非腳本加載完成,否則頁面不會響應!

支持情況:IE10以上,現代瀏覽器

示例: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>計數:<output id="count"></output></p>
    <button onclick="startWorker()">開始</button>
    <button onclick="overWorker()">結束</button>

    <script>
        var w;
        function startWorker(){
            // 檢測瀏覽器是否支持web worker
            if(typeof(Worker)!=='undefined'){
                if(typeof(w)=='undefined'){
                    //創建web worker對象
                    w=new Worker('testWorker.js');
                }
                // 事件持續監聽(即使外部腳本已經完成),除非被終止
                w.onmessage=function(event){
                    document.getElementById('count').innerHTML=event.data;
                };
            }else{
                document.getElementById('count').innerHTML='瀏覽器不支持web worker';
            }
        }
        function overWorker() {
            // 終止web worker對象,釋放瀏覽器/計算機資源
            w.terminate();
            w=undefined;
        }
    </script>
</body>
</html>

testWorker.js文件:

var i=0;
function timedCount() {
    i+=1;
    // 重要的部分,向html頁面傳回一段信息
    postMessage(i);
    setTimeout('timedCount()',500);
}
timedCount();

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

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

web worker缺點:

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

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

HTML5 server-sent events(服務器發送事件):

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

以前:網頁先詢問是否有可用的更新,服務器發送數據,進行更新(雙向數據傳遞)!

支持情況:除IE以外的現代瀏覽器均支持!

示例代碼: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){
            // 創建EventSource對象
            var source=new EventSource("test.php");
            // 事件監聽
            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:

<?php
header('Content-Type:text/event-stream');
header('Cache-Control:no-cache');

$time=date('r');
echo "data:The server time is: {$time} \n\n";
// 刷新輸出數據
flush();

注意:后面沒有內容,php文件可以不用"?>"關閉!

HTML5 WebSocket:

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

 WebSocket如何兼容低瀏覽器:

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

WebSocket可以用在多個標簽頁之間的通信!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:淮安 南京 十堰 佳木斯 酒泉 廣西 西寧 咸寧

巨人網絡通訊聲明:本文標題《HTML5 Web緩存和運用程序緩存(cookie,session)》,本文關鍵詞  HTML5,Web,緩存,和,運用,程序,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《HTML5 Web緩存和運用程序緩存(cookie,session)》相關的同類信息!
  • 本頁收集關于HTML5 Web緩存和運用程序緩存(cookie,session)的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    精品裸体舞一区二区三区| 久久久噜噜噜久久中文字幕色伊伊 | 成人sese在线| 国产日韩精品久久久| 国产精品一品二品| 欧美国产日本视频| 色综合久久久久综合| 日本一不卡视频| 国产拍欧美日韩视频二区| av一区二区久久| 日韩国产精品久久久久久亚洲| 久久伊99综合婷婷久久伊| 成人免费毛片嘿嘿连载视频| 亚洲激情一二三区| 欧美成人免费网站| 99久久精品免费| 奇米影视一区二区三区| 日本一区二区三区四区| 欧洲一区二区av| 国产一区二区三区在线观看精品 | 91精品国产黑色紧身裤美女| 日本vs亚洲vs韩国一区三区| 久久精品日产第一区二区三区高清版| 色综合久久天天| 精品中文字幕一区二区小辣椒| 国产精品久久久久桃色tv| 精品婷婷伊人一区三区三| 国产在线播精品第三| 亚洲成av人综合在线观看| 国产欧美日产一区| 日韩精品一区二区三区在线播放 | 成人综合激情网| 亚洲午夜电影网| 国产清纯在线一区二区www| 制服视频三区第一页精品| 99精品国产热久久91蜜凸| 国产精品资源在线观看| 日日欢夜夜爽一区| 亚洲激情在线播放| 国产精品久久久久毛片软件| 久久综合999| 欧美电影免费提供在线观看| 精品视频一区三区九区| 91麻豆视频网站| 成人国产在线观看| 丁香亚洲综合激情啪啪综合| 韩国在线一区二区| 五月天久久比比资源色| 亚洲伦理在线精品| 亚洲同性同志一二三专区| 国产精品久久久99| 中文字幕av不卡| 久久久www免费人成精品| 日韩欧美国产成人一区二区| 这里只有精品99re| 欧美一区二区三区四区视频| 欧美精品一二三| 欧美肥大bbwbbw高潮| 51精品视频一区二区三区| 91麻豆精品国产91久久久久久| 欧美精选在线播放| 91麻豆精品国产91久久久更新时间| 欧美日韩卡一卡二| 7777精品伊人久久久大香线蕉 | 国产在线精品免费av| 日韩成人一级片| 久久国产欧美日韩精品| 麻豆国产91在线播放| 麻豆精品一二三| 韩国精品在线观看| 国产精品一卡二| 99riav一区二区三区| 91成人在线免费观看| 在线播放欧美女士性生活| 日韩精品中文字幕在线一区| 久久综合九色综合欧美就去吻| 久久久亚洲精品石原莉奈 | 韩国av一区二区三区在线观看| 九九精品一区二区| 成人18精品视频| 色88888久久久久久影院野外| 欧美中文字幕一区| 欧美一区二区福利在线| 26uuuu精品一区二区| 亚洲欧洲在线观看av| 亚洲成人一二三| 精品一区二区三区香蕉蜜桃| 99这里只有久久精品视频| 欧美日韩一区二区三区不卡| 久久亚洲捆绑美女| 亚洲少妇最新在线视频| 蜜乳av一区二区| 91在线porny国产在线看| 这里只有精品99re| 日韩美女视频一区| 韩国精品主播一区二区在线观看 | 91香蕉视频黄| 精品国产成人系列| 亚洲免费视频成人| 激情图区综合网| 欧美日韩国产影片| 久久久久久久久久久99999| 亚洲已满18点击进入久久| 国产一区二区免费在线| 欧美日韩精品一区二区天天拍小说| 国产情人综合久久777777| 视频一区在线视频| av不卡免费电影| 精品国产乱码久久久久久蜜臀| 亚洲影视在线播放| 国产永久精品大片wwwapp| 欧美专区在线观看一区| 亚洲欧美综合网| 粉嫩高潮美女一区二区三区 | 国产视频911| 午夜私人影院久久久久| 色哟哟日韩精品| 久久午夜电影网| 蜜臀久久99精品久久久久宅男 | 欧美精品色综合| 亚洲欧洲精品一区二区三区| 蜜桃视频在线观看一区| 欧美三级乱人伦电影| 亚洲私人黄色宅男| 国产成都精品91一区二区三| 精品国产伦理网| 久久99精品久久久久久国产越南 | 六月婷婷色综合| 欧美一区二区三区公司| 色综合欧美在线| 亚洲日本韩国一区| 99国产欧美另类久久久精品 | 亚洲风情在线资源站| 99免费精品视频| 亚洲日本va午夜在线电影| 国产一区二区三区美女| 久久久久亚洲蜜桃| 国产精品2024| 国产女人aaa级久久久级| 国产91丝袜在线18| 国产日韩视频一区二区三区| 国产一区二区电影| 欧美精品一区二区三区在线播放 | 精品国产乱码久久| 精品无人区卡一卡二卡三乱码免费卡| 日韩午夜av一区| 久久精品噜噜噜成人av农村| 精品日韩一区二区| 紧缚奴在线一区二区三区| 精品国产1区2区3区| 欧美国产1区2区| 不卡av电影在线播放| 亚洲黄网站在线观看| 欧美日韩一本到| 麻豆91精品91久久久的内涵| 精品国产一区二区三区四区四 | 国产精品视频在线看| www.欧美色图| 午夜影院久久久| 久久久亚洲综合| 色欲综合视频天天天| 青娱乐精品视频| 国产精品欧美一级免费| 欧美日韩亚州综合| 国产激情偷乱视频一区二区三区 | 精品一区二区成人精品| 欧美国产精品一区二区| 亚洲色图一区二区| 日韩欧美一级精品久久| heyzo一本久久综合| 五月天网站亚洲| 国产欧美一区二区精品性色超碰| 97精品国产露脸对白| 五月综合激情日本mⅴ| 日本一区二区三级电影在线观看| 国产精品激情偷乱一区二区∴| 欧美无砖专区一中文字| 国产中文一区二区三区| 亚洲另类在线视频| 精品成人a区在线观看| 欧美日韩视频专区在线播放| a在线播放不卡| 狠狠色狠狠色合久久伊人| 亚洲v中文字幕| 日本一区二区三区在线不卡| 日韩欧美黄色影院| 色妹子一区二区| 国产成人高清在线| 日韩成人免费在线| 亚洲国产日产av| 一区二区三区久久久| 国产精品人妖ts系列视频| 国产乱码精品一区二区三区av| 一区二区三区欧美| 久久久久久久久久久99999| 4438亚洲最大| 欧美亚洲禁片免费| 色综合久久88色综合天天 | 国产欧美日韩视频在线观看| 日韩一区二区中文字幕|