精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

學(xué)會(huì)這篇就夠了,徹底弄懂前端緩存了

開(kāi)發(fā) 前端
前端緩存,這是一個(gè)老生常談的話題,也常被作為前端面試的一個(gè)知識(shí)點(diǎn)。今天我們?cè)賮?lái)總結(jié)一下。

分類

前端緩存分為強(qiáng)緩存和協(xié)商緩存兩種。

強(qiáng)緩存

強(qiáng)緩存主要使用Expires、Cache-Control 兩個(gè)頭字段,兩者同時(shí)存在Cache-Control 優(yōu)先級(jí)更高。當(dāng)命中強(qiáng)緩存的時(shí)候,客戶端不會(huì)再求,直接從緩存中讀取內(nèi)容,并返回HTTP狀態(tài)碼200。

  • Expires

響應(yīng)頭,代表該資源的過(guò)期時(shí)間。是一個(gè)GMT 格式的標(biāo)準(zhǔn)時(shí)間。

當(dāng)客戶端請(qǐng)求服務(wù)器的時(shí)候,服務(wù)器會(huì)返回資源的同時(shí)還會(huì)帶上響應(yīng)頭Expires,表示資源的過(guò)期具體時(shí)間,如果客戶端在過(guò)期時(shí)間之前再次獲取該資源,就不需要再請(qǐng)求我服務(wù)器了,可以直接在緩存里面拿。

使用Expires強(qiáng)緩存優(yōu)點(diǎn):

  • 在過(guò)期時(shí)間以內(nèi),為用戶省了很多流量。
  • 減少了服務(wù)器重復(fù)讀取磁盤文件的壓力。

使用Expires強(qiáng)緩存缺點(diǎn)

  • 緩存過(guò)期以后,服務(wù)器不管文件有沒(méi)有變化會(huì)再次請(qǐng)求服務(wù)器。
  • 緩存過(guò)期時(shí)間是一個(gè)具體的時(shí)間,這個(gè)時(shí)間依賴于客戶端的時(shí)間,如果時(shí)間不準(zhǔn)確或者被改動(dòng)緩存也會(huì)隨之受到影響。
  • Cache-Control

 請(qǐng)求/響應(yīng)頭,緩存控制字段,精確控制緩存策略。

為了讓強(qiáng)緩存更精確,HTTP1.1增加了Cache-Control字段。Cache-Control既能出現(xiàn)在請(qǐng)求頭又能出現(xiàn)在響應(yīng)頭,其不同的值代表不同的意思,下面我們具體分析一下。

Cache-Control 服務(wù)端參數(shù):

  • max-age: 在多少秒內(nèi)有效,是一個(gè)相對(duì)時(shí)間,這樣比Expires具體的時(shí)間就更精確了。
  • s-maxage: 就是用于表示 cache 服務(wù)器上(比如 cache CDN,緩存代理服務(wù)器)的緩存的有效時(shí)間的,并只對(duì) public 緩存有效。
  • no-cache:不使用本地強(qiáng)緩存。需要使用緩存協(xié)商。
  • no-store:直接禁止瀏覽器緩存數(shù)據(jù),每次用戶請(qǐng)求該資源,都會(huì)向服務(wù)器發(fā)送一個(gè)請(qǐng)求,每次都會(huì)下載完整的資源。
  • public:可以被所有的用戶緩存,包括終端用戶和中間代理服務(wù)器。
  • private:只能被終端用戶的瀏覽器緩存,不允許中間緩存代理進(jìn)行緩存,默認(rèn)的。

Cache-Control 客戶端參數(shù):

  • max-stale: 5 表示客戶端到代理服務(wù)器上拿緩存的時(shí)候,即使代理緩存過(guò)期了也不要緊,只要過(guò)期時(shí)間在 5 秒之內(nèi),還是可以從代理中獲取的。
  • min-fresh: 5 表示代理緩存需要一定的新鮮度,不要等到緩存剛好到期再拿,一定要在到期前 5 秒之前的時(shí)間拿,否則拿不到。
  • only-if-cached 這個(gè)字段加上后表示客戶端只會(huì)接受代理緩存,而不會(huì)接受源服務(wù)器的響應(yīng)。如果代理緩存無(wú)效,則直接返回 504(Gateway Timeout)。

協(xié)商緩存

協(xié)商緩存主要有四個(gè)頭字段,它們兩兩組合配合使用,If-Modified-Since 和 Last-Modified一組,Etag 和 If-None-Match一組,當(dāng)同時(shí)存在的時(shí)候會(huì)以Etag 和 If-None-Match為主。當(dāng)命中協(xié)商緩存的時(shí)候,服務(wù)器會(huì)返回HTTP狀態(tài)碼304,讓客戶端直接從本地緩存里面讀取文件。

  • If-Modified-Since

 請(qǐng)求頭,資源最近修改時(shí)間,由瀏覽器告訴服務(wù)器。其實(shí)就是第一次訪問(wèn)服務(wù)端返回的Last-Modified的值。

  • Last-Modified

 響應(yīng)頭,資源最近修改時(shí)間,由服務(wù)器告訴瀏覽器。

  • Etag

 響應(yīng)頭,資源標(biāo)識(shí),由服務(wù)器告訴瀏覽器。

  • If-None-Match

請(qǐng)求頭,緩存資源標(biāo)識(shí),由瀏覽器告訴服務(wù)器。其實(shí)就是第一次訪問(wèn)服務(wù)端返回的Etag的值。

If-Modified-Since 和 Last-Modified

當(dāng)客戶端第一次請(qǐng)求服務(wù)器的時(shí)候,服務(wù)端會(huì)返回一個(gè)Last-Modified響應(yīng)頭,該字段是一個(gè)標(biāo)準(zhǔn)時(shí)間。客戶端請(qǐng)求服務(wù)器的時(shí)候會(huì)帶上If-Modified-Since請(qǐng)求頭字段,該字段的值就是服務(wù)器返回的Last-Modified的值。服務(wù)器接收到請(qǐng)求后會(huì)比較這兩個(gè)值是否一樣,一樣就返回304,讓客戶端從緩存中讀取,不一樣就會(huì)返回新文件給客戶端并更新Last-Modified響應(yīng)頭字段的值。

使用If-Modified-Since 和 Last-Modified的優(yōu)點(diǎn):

  • 當(dāng)緩存有效時(shí)服務(wù)器不會(huì)返回文件給客戶端,而是直接返回304狀態(tài)碼,讓客戶端從緩存中獲取文件。大大節(jié)省了流量和帶寬以及服務(wù)器的壓力。

使用If-Modified-Since 和 Last-Modified的缺點(diǎn):

  • Last-Modified 過(guò)期時(shí)間只能精確到秒。如果在同一秒既修改了文件又獲取文件,客戶端是獲取不到最新文件的。

Etag 和 If-None-Match

為了解決文件修改時(shí)間只能精確到秒帶來(lái)的問(wèn)題,我們引入 Etag 響應(yīng)頭。Etag 是由文件修改時(shí)間與文件大小計(jì)算而成,只有當(dāng)文件文件內(nèi)容或修改時(shí)間變了Etag的值才會(huì)發(fā)生變化。

當(dāng)客戶端第一次請(qǐng)求服務(wù)器的時(shí)候,服務(wù)端會(huì)返回一個(gè)Etag響應(yīng)頭。客戶端請(qǐng)求服務(wù)器的時(shí)候會(huì)帶上If-None-Match請(qǐng)求頭字段,該字段的值就是服務(wù)器返回的Etag的值。服務(wù)器接收到請(qǐng)求后會(huì)比較這兩個(gè)值是否一樣,一樣就返回304,讓客戶端從緩存中讀取,不一樣就會(huì)返回新文件給客戶端并更新Etag響應(yīng)頭字段的值。

使用Etag 和 If-None-Match的優(yōu)點(diǎn):

  • 當(dāng)緩存有效時(shí)服務(wù)器不會(huì)返回文件給客戶端,而是直接返回304狀態(tài)碼,讓客戶端從緩存中獲取文件。大大節(jié)省了流量和帶寬以及服務(wù)器的壓力。
  • 并且解決了一秒內(nèi)修改并讀取的問(wèn)題。

擴(kuò)展

緩存失效問(wèn)題

引入了緩存固然是好事,能大大提升響應(yīng)速度以及減輕服務(wù)端的壓力,但是也會(huì)出現(xiàn)一些問(wèn)題,比如我們明明更新了系統(tǒng)版本,為什么客戶端看到的還是老文件。在不同的時(shí)代有不同的解決方案。

老方案

老方案通過(guò)人工自己修改文件名或者在文件名后帶上版本號(hào)、時(shí)間戳,這樣客戶端就會(huì)當(dāng)新文件請(qǐng)求并使用,之前的強(qiáng)緩存就算在有效期內(nèi)也會(huì)失效。

<script src="http://randy.js?version=1.1.1> </script>
復(fù)制代碼

新方案

在現(xiàn)在的構(gòu)建階段基本上都不需要人工操作了,都是使用構(gòu)建工具比如Wbpack、Gulp、Grunt等構(gòu)建工具自動(dòng)構(gòu)建。比如在使用Webpack構(gòu)建的時(shí)候,會(huì)根據(jù)文件名或文件內(nèi)容自動(dòng)計(jì)算hash值來(lái)給文件命名,當(dāng)內(nèi)容或文件名發(fā)生改變的時(shí)候,構(gòu)建出來(lái)的文件名也一定會(huì)不一樣,這樣也解決了強(qiáng)緩存還在有效期內(nèi)的問(wèn)題。

pragma

pragma是舊產(chǎn)物,已經(jīng)逐步拋棄,有些網(wǎng)站為了向下兼容還保留了這個(gè)字段。pragma的值為no-cache時(shí),表示禁用緩存。優(yōu)先級(jí)是 pragma > cache-control > expires。

流程圖

有了這張流程圖,可以讓你們理解的更清楚。

緩存的配置

如果我們使用Nginx作為Web服務(wù)器,我們可以如下配置。

location / {
# 其它配置
...
if ($request_uri ~* .*[.](js|css|map|jpg|png|svg|ico)$) {
#非html緩存1個(gè)月
add_header Cache-Control "public, max-age=2592000";
}
if ($request_filename ~* ^.*[.](html|htm)$) {
#html文件使用協(xié)商緩存
add_header Cache-Control "public, no-cache";
}
}
復(fù)制代碼

緩存到底存在哪?

很多小伙伴會(huì)好奇,這緩存到底存在哪里了呢?別急,我們接著往下講。

按緩存位置分類我們可以分為memory cache、disk cache、Service Worker三類,我們可以在 Chrome 的開(kāi)發(fā)者工具中,Network -> Size 一列看到一個(gè)請(qǐng)求最終的處理方式:如果是大小 (多少 K, 多少 M 等) 就表示是網(wǎng)絡(luò)請(qǐng)求,否則會(huì)列出 from memory cache、from disk cache、from ServiceWorker就表示命中了緩存。

  • memory cache 是內(nèi)存中的緩存,(與之相對(duì) disk cache 就是硬盤上的緩存)。按照操作系統(tǒng)的常理:先讀內(nèi)存,再讀硬盤。

微信截圖_20220119110918.png

  • disk cache 也叫 HTTP cache,顧名思義是存儲(chǔ)在硬盤上的緩存,因此它是持久存儲(chǔ)的,是實(shí)際存在于文件系統(tǒng)中的。而且它允許相同的資源在跨會(huì)話,甚至跨站點(diǎn)的情況下使用,例如兩個(gè)站點(diǎn)都使用了同一張圖片。

微信截圖_20220119110855.png

  • 上述的緩存策略以及緩存/讀取/失效的動(dòng)作都是由瀏覽器內(nèi)部判斷進(jìn)行的,我們只能設(shè)置響應(yīng)頭的某些字段來(lái)告訴瀏覽器,而不能自己操作。service work給予了我們另外一種更加靈活,可以直接的操作方式。我們可以從 Chrome 的 Application找到Service Workers。這個(gè)緩存是永久性的,即關(guān)閉 TAB 或者瀏覽器,下次打開(kāi)依然還在(而 memory cache 不是)。有兩種情況會(huì)導(dǎo)致這個(gè)緩存中的資源被清除:手動(dòng)調(diào)用 API cache.delete(resource) 或者容量超過(guò)限制,被瀏覽器全部清空。

后記

本文為筆者個(gè)人學(xué)習(xí)筆記,如有謬誤,還請(qǐng)告知,萬(wàn)分感謝!如果本文對(duì)你有所幫助,還請(qǐng)點(diǎn)個(gè)贊~~

責(zé)任編輯:龐桂玉 來(lái)源: 前端技術(shù)編程
相關(guān)推薦

2022-02-22 08:55:29

SelectPoll/ Epoll

2022-08-18 20:45:30

HTTP協(xié)議數(shù)據(jù)

2024-07-05 11:01:13

2020-10-13 07:44:40

緩存雪崩 穿透

2019-07-31 15:56:57

Jvm虛擬機(jī)Content

2025-02-14 08:53:24

2019-08-16 09:41:56

UDP協(xié)議TCP

2021-09-30 07:59:06

zookeeper一致性算法CAP

2022-03-13 09:31:43

MQ消息隊(duì)列ActiveMQ

2019-10-16 11:12:14

前端Docker虛擬機(jī)

2022-05-27 08:18:00

HashMapHash哈希表

2020-07-16 08:04:21

瀏覽器緩存策略

2021-10-13 16:54:22

IPv6網(wǎng)絡(luò)5G

2021-09-02 07:00:32

鑒權(quán)Web 應(yīng)用Cookie-sess

2015-11-02 09:49:04

Android屏幕適配官方指導(dǎo)

2019-10-31 09:48:53

MySQL數(shù)據(jù)庫(kù)事務(wù)

2022-03-29 08:23:56

項(xiàng)目數(shù)據(jù)SIEM

2021-05-07 07:52:51

Java并發(fā)編程

2017-03-30 22:41:55

虛擬化操作系統(tǒng)軟件

2024-08-27 11:00:56

單例池緩存bean
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

午夜不卡av在线| 成人午夜碰碰视频| 久久久精品国产亚洲| 亚洲综合在线一区二区| 激情av在线| 2022国产精品视频| 成人精品福利视频| 九九热在线视频播放| 日韩激情在线| 亚洲第一视频网| www.色就是色| 韩国日本一区| 国产亚洲视频系列| 国产精品theporn88| 中文字幕+乱码+中文乱码91| 国模吧视频一区| 色99之美女主播在线视频| 日韩高清一二三区| 欧美高清你懂的| 懂色aⅴ精品一区二区三区蜜月| 亚洲v日韩v欧美v综合| 国模人体一区二区| 久久er99精品| 国产999精品久久久| 欧美成人精品一区二区免费看片 | 色先锋资源久久综合| 一区二区三区四区久久| 噜噜噜在线观看播放视频| 国产乱码一区二区三区| 国产精品a久久久久久| 日韩乱码一区二区| 午夜日韩av| 色偷偷综合社区| 性欧美精品中出| 免费看成人人体视频| 日韩欧美综合在线| 国产乱叫456| 欧美天堂一区二区| 日本国产一区二区| 日韩免费一级视频| 成人影音在线| 亚洲一区二区三区自拍| 最新av网址在线观看| 日本www在线观看| 国产三级欧美三级日产三级99| 国产亚洲一区二区三区在线播放| 国产精品自偷自拍| 久久精品99国产精品| 国产成人精品免高潮在线观看 | 精品1区2区3区4区| 美女av一区二区三区| 日韩av网站在线播放| 欧美日韩一二三四| 尤物yw午夜国产精品视频| www.av欧美| 精品一区免费| 亚洲日本欧美日韩高观看| av直播在线观看| 一区三区在线欧| 亚洲欧美国产精品久久久久久久| 中国xxxx性xxxx产国| 综合成人在线| 日韩av中文字幕在线免费观看| 亚洲av成人精品一区二区三区 | 日产精品一线二线三线芒果| 欧洲成人av| 日本一区二区成人在线| 亚洲一区二区三区涩| 一本一道波多野毛片中文在线| 国产精品私人影院| 一区二区三视频| 免费黄网站在线| 亚洲精品自拍动漫在线| 免费网站在线观看视频| 国产免费拔擦拔擦8x高清在线人| 欧美日韩国产精品一区二区三区四区 | 四虎影视精品成人| 国产日产欧美一区二区三区 | 国产在线观看高清视频| 国产日韩精品一区二区浪潮av| 一区二区成人国产精品 | 亚洲三级在线观看| 国产精品三级一区二区| 三妻四妾完整版在线观看电视剧 | 国产精品麻豆一区二区 | 国产精品婷婷| 国产精品免费看久久久香蕉| 国产精品久久久久久无人区| 国产aⅴ综合色| 欧美不卡福利| 国产三区在线观看| 亚洲第一久久影院| 国产精品入口免费软件| 亚洲专区**| 亚洲欧美中文字幕| 精品人妻伦九区久久aaa片| 亚洲东热激情| 国产欧美中文字幕| 人妻无码中文字幕免费视频蜜桃| 久久久一区二区三区捆绑**| 在线不卡视频一区二区| 九色porny自拍视频在线观看 | 亚洲另类中文字| 久久精品国产精品亚洲色婷婷| 亚洲成人短视频| 日韩一级大片在线观看| 干b视频在线观看| 亚洲视频福利| 国产日韩精品在线播放| 色猫av在线| 一区二区三区四区在线播放 | 日韩欧美视频在线免费观看| 理论片日本一区| 久久精品国产美女| av毛片在线免费看| 欧美影院精品一区| 国产精品成人无码专区| 国产精品久久久久久久久久10秀 | 国产黄色激情视频| 成人亚洲网站| 亚洲人成在线观看网站高清| 欧美久久久久久久久久久久| 青青草国产精品亚洲专区无| 久久精品国产精品青草色艺| 免费污视频在线观看| 欧美三级一区二区| 中日韩精品一区二区三区| 自拍偷拍欧美专区| 国产精品无av码在线观看| 午夜影院免费体验区| 亚洲综合成人网| 亚洲免费在线播放视频| 精品国产一区二区三区香蕉沈先生 | 欧美日韩大陆在线| 免费视频91蜜桃| 国产精品尤物| 精品午夜一区二区| 成人福利电影| 欧美mv日韩mv国产网站app| www.av成人| 精品一区二区三区免费| 亚洲在线视频一区二区| 欧美日韩国产网站| 一区二区欧美久久| 91黑人精品一区二区三区| 久久亚洲欧美国产精品乐播| 91国视频在线| 网曝91综合精品门事件在线| 2019日本中文字幕| 四虎影视精品成人| 色综合天天综合| 中文字幕 自拍| 美女一区二区三区| 亚洲在线观看一区| 日韩久久一区| 欧美成人合集magnet| www.99视频| 亚洲福利一区二区| 中文乱码人妻一区二区三区视频| 精品9999| 欧美日韩国产一二| 精品视频在线一区二区在线| 在线午夜精品自拍| 国产又黄又粗又长| 一区二区三区视频在线看| 伊人av在线播放| 国产日本精品| 欧美一区二区三区四区五区六区| 草莓视频成人appios| 中文字幕精品网| 国产成人精品av在线观| 亚洲一区二区在线观看视频| a天堂视频在线观看| 久久经典综合| 中文字幕欧美日韩一区二区三区| 久久一级大片| 欧美性受xxxx白人性爽| av中文字幕在线| 日韩一卡二卡三卡四卡| 国产精品成人国产乱| 久久老女人爱爱| 97超碰成人在线| 一区在线视频观看| 日韩精品欧美专区| 亚洲日本一区二区三区在线| 69av在线视频| 秋霞成人影院| 亚洲国产成人av在线| 中文字幕精品一区二区精| 一区二区三区四区在线播放| 中文字幕国产专区| 激情六月婷婷久久| 国产日产欧美视频| 欧美二区不卡| 涩涩涩999| 中文字幕久久精品一区二区| 国产精品电影网| 日本在线观看大片免费视频| 亚洲欧洲第一视频| www国产一区| 欧美怡红院视频| 自拍偷拍欧美亚洲| 亚洲人成7777| 免费看日本黄色片| 99re成人精品视频| 国内自拍第二页| 日韩中文字幕不卡| 久久av综合网| 91久久国产| 日本精品一区二区三区视频| 超碰精品在线观看| 成人午夜激情网| 经典三级一区二区| 97精品一区二区三区| 黄色网址视频在线观看| 亚洲图片制服诱惑| 色婷婷中文字幕| 欧美一区二区三区视频在线| 在线视频 中文字幕| 欧美性色视频在线| 日本网站免费观看| 一区二区三区在线观看视频 | 亚洲一区二区三区中文字幕| 91大神福利视频| 国产人成亚洲第一网站在线播放 | 国产欧美日韩综合精品一区二区| av黄色一级片| 国产成人在线观看| 国产福利精品一区二区三区| 视频一区在线视频| 免费毛片小视频| 亚洲欧洲视频| 又大又硬又爽免费视频| 亚洲国产一成人久久精品| 亚洲欧美精品| 日韩一区二区中文| 亚洲人一区二区| 欧美影院三区| 亚洲精品一区二区三区樱花| 国产在线日韩精品| 日韩久久精品一区二区三区| 免费精品国产的网站免费观看| 精品视频一区在线| 啪啪国产精品| 久久99精品国产99久久| 天堂网av成人| 欧美日韩一区在线观看视频| 亚洲精品456| 欧美最大成人综合网| 国产精品一线天粉嫩av| 日韩欧美一区二区三区四区五区 | 韩国精品视频在线观看 | 国产肥臀一区二区福利视频| 今天的高清视频免费播放成人| 久久国产午夜精品理论片最新版本| 午夜天堂精品久久久久| 91亚洲精品国产| 狠狠色丁香久久综合频道| 久久精品无码中文字幕| 日韩视频三区| 青青青在线播放| 日韩成人一区二区三区在线观看| 久热精品在线播放| 国产乱色国产精品免费视频| 成年人看片网站| 99精品欧美一区二区蜜桃免费| 黄色在线观看av| 欧美激情一区二区三区在线| 欧美肥妇bbwbbw| 亚洲6080在线| 亚洲中文一区二区| 欧美日韩精品一区二区在线播放 | 日韩国产激情在线| 国产福利免费在线观看| 精品国产欧美一区二区五十路 | 日本久久久久亚洲中字幕| 日产精品一区| 91视频九色网站| 美女网站色精品尤物极品姐弟| 欧美日韩国产精品一区二区| 久久资源中文字幕| av片在线免费| 免费亚洲电影在线| 女人扒开双腿让男人捅 | 精品免费一区二区三区蜜桃| 国产毛片一区二区三区| 国产精品av免费| 影音先锋亚洲精品| 亚洲综合色在线观看| 懂色一区二区三区免费观看| 久久精品国产亚洲av久| 亚洲精选视频在线| 91玉足脚交嫩脚丫在线播放| 欧美日韩视频在线一区二区| 东京干手机福利视频| 伊人久久久久久久久久| 波多野结衣中文字幕久久| 国产精品精品久久久| 国语一区二区三区| 亚洲图片小说在线| 在线亚洲观看| gogo亚洲国模私拍人体| 欧美国产精品劲爆| 色网站在线播放| 日韩午夜三级在线| 99riav在线| 91av在线影院| 亚洲精品在线播放| 亚洲一区在线直播| 性欧美videos另类喷潮| 性鲍视频在线观看| 国产精品视频yy9299一区| 亚洲免费在线观看av| 欧美一区二区三区在线看| 二区三区在线播放| 欧美亚洲成人免费| 成功精品影院| 成人免费看片视频在线观看| 日本成人中文字幕在线视频| 欧美xxxx×黑人性爽| 亚洲黄色录像片| 国产乱色精品成人免费视频| 国产亚洲欧美一区| 成人爽a毛片免费啪啪| 国产高清一区二区三区| 国产精品久久久乱弄| 91最新在线观看| 国产日韩欧美电影| 国产一级片av| 亚洲精品一区二区网址| 91福利在线免费| 国产一级特黄a大片99| 精品不卡视频| 91蝌蚪视频在线| 亚洲日本一区二区三区| 一级片视频播放| 深夜福利亚洲导航| 日韩欧美一区二区三区在线观看| 久久久久网址| 麻豆成人精品| 国产aⅴ激情无码久久久无码| 日韩欧美国产一区二区| 四虎精品在永久在线观看| 国产91av在线| 欧美猛男做受videos| 日韩欧美在线免费观看视频| 国产日韩欧美a| 中文字幕在线观看你懂的| 伊人激情综合网| 四虎影视成人精品国库在线观看| 亚洲一区二区三区涩| 极品美女销魂一区二区三区| 国产精品成人69xxx免费视频| 777午夜精品视频在线播放| 国产剧情在线| yellow视频在线观看一区二区| 欧美激情亚洲| 国产一级二级视频| 色综合色狠狠天天综合色| 国产youjizz在线| 91精品久久久久久久久| 午夜激情一区| 精品国产一区在线| 色老头久久综合| 免费观看在线黄色网| 99国产超薄丝袜足j在线观看 | 欧美一级淫片aaaaaa| 欧美有码在线观看视频| 精品久久久久中文字幕小说| 少妇网站在线观看| 亚洲久草在线视频| 午夜视频福利在线| 国产精自产拍久久久久久蜜| 午夜日韩av| 国产女主播喷水高潮网红在线| 欧美色手机在线观看| 91精品久久久久久粉嫩| 精品免费国产| 精品中文av资源站在线观看| 欧美精品久久久久性色| 亚洲乱码国产乱码精品精| 国产伊人久久| 亚洲美免无码中文字幕在线 | 国产大学生自拍| 亚洲国产私拍精品国模在线观看| 欧美一区久久久| 中文字幕超清在线免费观看| 91一区二区在线观看| 中文字幕在线视频免费| 欧美黄色免费网站| 欧美理论电影大全| 国产人成视频在线观看| 欧美日韩在线观看一区二区| av免费在线视| 一本久道久久综合| jizz一区二区| 国产chinasex对白videos麻豆| 热久久免费视频精品| 国产精品观看| 国产在线免费看|