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

真正“搞”懂HTTP協議之body的玩法

網絡 網絡管理
本篇我們主要聊了兩件事,一個是文件、另外一個就是傳輸文件。文件相關的我們聊了文件的類型、語言類型、簡單壓縮等等,傳輸文件則主要有兩個部分,一個是分塊傳輸、一個是分段傳輸。就這點東西,沒了,全是理論。

我們聊完了HTTP的特點和起始行的部分,并且著重的聊了聊請求方法和狀態碼。這兩個東西十分重要,因為它們往往會配合頭字段使用,我一再強調,后續的內容在涉及到相關內容的時候。從這一章開始,直到HTTP/2為止,我會帶大家學習并通過Node來實踐HTTP/1的核心頭字段部分,HTTP的一些能力,其實大部分都是通過頭字段來擴展的。

那么這一章,我們就來學一學跟body有關的頭字段部分。

我們先來回憶一下,關于body的部分,到目前為止,我們已知的內容有哪些呢?在0.9的時代,可以說是只有響應返回的body的,而沒有請求的body。到了1.0才有了請求體和響應體,也就是請求和響應才雙雙有了body,到了1.1則擴展了一些關于body的字段。我們下面就來看看關于body的頭字段的內容及其協商的方式。

一、MIME

我之前簡單的聊到過這個東西,想必大家有點印象,MIME在HTTP的body體系中發揮了十分重要的作用。我們需要深入的了解下。我之前說過,當我們需要傳遞一些數據或者內容的時候,我怎么才能把數據傳遞給對方并且正確的翻譯這份數據呢?傳遞的事情交給TCP我們不做太多的深究,而翻譯的工作則是由溝通雙方,或者說客戶端和服務器來做。

客戶端傳給服務器一個圖片,服務器怎么知道這是個圖片呢?或者反過來,客戶端怎么知道這是個圖片呢?理論上講,無論用什么辦法都不行。除非,我把”這是個圖片“告訴你。是不是感覺有點簡單,說白了就是協商。甚至于服務器收到了客戶端的消息,知道了這是一個圖片,但是我就是不按照圖片來解析,直接給你報個錯,你也沒辦法。

但是“標準”的意義就是我們要按照標準來,所以……雖然服務器可以不按規矩來,但是我們得按照規矩來學。

我們繼續,哈哈哈,MIME是啥呢?MIME的全稱叫做多用途互聯網郵件擴展(Multipurpose Internet Mail Extensions),它本來是用在電子郵件系統里的,是為了可以讓郵件發送多類型的數據,在這里有比較詳細的介紹,大家有興趣可以自己看。當HTTP也需要這個東西的時候,就發現,欸?MIME不錯,我可以直接拿來用,省著我再自己搞一套了,所以HTTP順手牽羊就拿過來一部分用了。

MIME把數據分為了八大類,格式差不多是這樣的:type/subtype。它的八大類型差不多有這些:

  • Text:用于標準化地表示的文字訊息,文字訊息可以是多種字符集和或者多種格式的;
  • Multipart:用于連接消息體的多個部分構成一個消息,這些部分可以是不同類型的資料;
  • Application:用于傳輸應用程序資料或者二進制資料;
  • Message:用于包裝一個E-mail訊息;
  • Image:用于傳輸靜態圖片資料;
  • Audio:用于傳輸音頻或者音聲資料;
  • Video:用于傳輸動態影像資料,可以是與音頻編輯在一起的視訊資料格式;
  • Font:用于傳輸字體文件;
  • Model:用于傳輸3D模型文件。

大家對其中的一些類型是不是都比較熟悉,比如Text、Multipart、Application、Image、Video等等,咱們在實際的工作中肯定都或多多少的接觸過。然后,我們再來看看子類型有哪些:

  • text/plain(純文字)
  • text/html(HTML文件)
  • application/xhtml+xml(XHTML文件)
  • image/gif(GIF圖片)
  • image/jpeg(JPEG圖片)
  • image/png(PNG圖片)
  • audio/mpeg(MP3音頻)
  • audio/aac(AAC音頻)
  • video/mpeg(MPEG視頻)
  • video/mp4(MPEG-4視頻)
  • application/octet-stream(任意的二進制數據)
  • application/json(JSON文件)
  • application/pdf(PDF文件)
  • application/msword(Microsoft Word文件)
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document(Microsoft Word 2007文件)
  • application/vnd.wap.xhtml+xml (wap1.0+)
  • application/xhtml+xml (wap2.0+)
  • message/rfc822(RFC 822形式)
  • multipart/alternative(HTML郵件的HTML形式和純文本形式,相同內容使用不同形式表示)
  • application/x-www-form-urlencoded(使用HTTP的POST方法送出的表單)
  • multipart/form-data(同上,但主要用于表單送出時伴隨文件上傳的場合)

我列出了大多數的數據類型,以及其子類型,當然,這些東西并不一定要求大家都完全理解,見名知意即可。而我加粗字體的部分,其實就是我們日常工作中最常見的幾種數據類型。

二、數據類型

在HTTP中,我們可以通過Accept字段來告知服務器希望接收什么類型的數據,服務器則用Content頭字段來告知客戶端實際發送了什么數據。注意Accept和Content是一個分類,也是我們本章要聊的核心內容。其中包含了不少的頭字段,我們也會慢慢說。

我們繼續說回來這個表示數據類型的頭字段,Accept字段會表示客戶端可以理解的MIME type,可以用“,”分割,列出多個類型,讓服務器有更多選擇的可能,比如:

Accept: application/json,text/html,application/xml

這就是告訴服務器,我能解析的數據類型有json、html以及xml,可以給我這些類型范圍內的數據。

相應的,服務器會使用Content-Type頭字段告知客戶端實體數據的真實類型:

Content-Type: application/json

這樣瀏覽器讀取Content-Type就知道是個json文件,然后通過引擎解析,就完事了。

很簡單對吧。

然后……我還是要強調一下,如果服務器收到了客戶端想要的數據類型,但是我就不按照你想要的給你,咋滴,那其實也一點問題沒有,所以,在早期的RFC1945中,Accept是附加在其他功能中的。直到1.1的時候,才正式加入標準。

三、數據壓縮

通常情況下,我們在傳輸數據的時候,為了可以更好的節省帶寬,都會對數據進行壓縮后再傳輸。在HTTP中也是如此,那壓縮數據的方式往往有很多種,當然,這個很多就比MIME要少很多了,只有三種:

gzip:熟悉吧,也就是GNU zip壓縮格式,也是互聯網上最最最流行的壓縮格式;

deflate:zlib(deflate)壓縮格式,流行程度僅次于 gzip;

br:一種專門為 HTTP 優化的新壓縮算法(Brotli)。

那么客戶端就可以使用Accept-Encoding字段來標記支持的壓縮格式,也可以通過“,”來分割多個支持的格式,服務器則會把實際使用的壓縮格式放到Content-Encoding字段里。

Accept-Encoding: gzip, deflate, br

Content-Encoding:

在實際使用中,這兩個字段是可以省略的,客戶端省略意味著不支持壓縮,服務器的省略則是告知客戶端傳輸的這份數據沒有被壓縮。

四、語言類型

有了數據類型和壓縮類型,可以讓機器識別出傳輸的數據是什么以及如何解壓了。但是全球各地有這么多的國家和地區,不同的國家和地區都使用不同的語言,甚至是相同國家和地區的人都可能使用不同的語言,那瀏覽器怎么顯示出每個人都可以理解的語言文字呢?換句話說,就是我如何根據不同的情況來正確的編碼這份數據呢?再換句話說,其實就是國際化的問題。

我猜已經學到了這里的你已經知道怎么解決了,協商唄,字段唄。哈哈哈,感覺有點無聊。。一點懸念都沒有。

對于請求頭來說使用的字段是Accept-Language,對于響應報文中的實體頭字段則是Content-Language,這里大家要注意一點,Accept頭字段是請求頭字段,而Content則是實體頭字段,不是響應頭字段噢。這個大家要注意一下。

 例子如下:

Accept-Language: zh-CN, zh, en

Content-Language: zh-CN

很簡單,也不復雜,但是還沒完,這些頭字段對應的值是什么東東?嗯……這些東西叫做語言類型,就是 人類使用的自然語言,比如英語、漢語、法語等等,而這些自然語言也有其下屬方言,所以跟數據類型類似,也是type-subtype的形式,而與語言類型不同的是。數據類型是用"/"來分割父類與子類,語言類型則是用“-”來分割。

比如,en表示英語,en-US表示美式英語,en-GB表示英式英語,當然還有更多的語言類型,大家可以自行了解下,這里多說無益。

到了這里,服務器知道了用什么類型的語言,但是你要知道計算機的底層本質就是0和1,我要怎么把0和1翻譯成對應的語言呢?這就要用到字符集了,在計算機發展的早期,十分的混亂,各個國家和地區的人們都自己定義了一套體系,發明了許多編碼來處理各自的文字,比如英語用ASCII,漢語用GBK。這就導致同樣一段文字,用不同的編碼就可能會顯示的一點都不一樣。

所以后來就出現了Unicode和UTF-8,把世界上所有的語言都容納在一種方案里。

在HTTP中的請求頭中,可以通過Accept-Charset來表達客戶端可以接受的編碼類型,但是響應頭里卻沒有對應的字段,而是在Content-Type字段的數據類型后面用“charset=xxx”來表示,這點你要特別注意。

Accept-Charset: gbk, utf-8

Content-Type: text/html; charset=utf-8

不過在現代的瀏覽器里都支持多種字符集,所以通常情況下,不會發送Accept-Charset請求頭,服務器也不會返回Content-Language,因為使用的語言完全可以通過字符集推斷出來,所以一般在請求頭里只有Accent-Language,響應頭里只有Content-Type。

五、質量值

質量值的英文名叫做quality factory,直譯過來叫做質量因數,其實就是權重的意思啦。它在HTTP中使用q作為一個參數,形式就是“q=value”,這個value可以是0到1之間,包含0和1的兩位小數。與字段中的值用“;”來分割。

這里要強調一點的是,在其它大多數語言中,就比如JavaScript吧,分號“;”的斷句語氣是要強于逗號“,”的,但是在HTTP中則相反。我們看個例子:

Accept: text/html,application/xml;q=0.9,*/*;q=0.8

這段話是啥意思呢,就是瀏覽器最希望服務器傳過來的是html文件,不寫默認權重就是1,其次是xml文件,權重是0.9,最后就是權重為0.8的任意文件類型。服務器收到請求后,就會根據這段內容,來優先返回HTML。

六、Vary

這個東西有點怪怪的,我們來學學。它的意思是,我返回給你的響應報文,參考了哪些頭字段。也就是說,客戶端與瀏覽器在協商確定響應報文該如何返回的過程,其實并不透明,你不知道是咋協商的,或者服務器根本就不管你協商不協商都是有可能的。

但是友好一點的服務器會在響應頭里多加一個Vary字段,記錄服務器在內容協商時參考的請求頭字段,給出一點信息。

Vary: Accept-Encoding,User-Agent,Accept

上面的例子表示服務器參考了Accept-Encoding,User-Agent,Accept這三個字段后,返回了響應報文。

Vary 字段可以認為是響應報文的一個特殊的“版本標記”。每當 Accept 等請求頭變化時,Vary 也會隨著響應報文一起變化。也就是說,同一個 URI 可能會有多個不同的“版本”,主要用在傳輸鏈路中間的代理服務器實現緩存服務,這個之后講“HTTP 緩存”時還會再提到。

七、分塊傳輸

我們前六個小節,聊了聊數據是如何在HTTP中協商才可以讓客戶端與服務器雙方知道怎么處理該數據。并且如果數據體積過大,我們還可以通過協商壓縮方式來給傳輸的數據進行壓縮傳輸。看起來,好像一切都挺美好的,但是如果我要傳輸的文件體積特別大呢?比如一個視頻……小的有幾百兆,大的有幾個G,并且針對視頻的壓縮效率是很低的,那你怎么傳輸呢?

嗯……標題就是答案。我們沒辦法把一個大體積的數據整體變小,那么我們只能把這個特別大的數據進行切分,切分成一小塊一小塊的,服務器把這些小塊的數據傳輸給瀏覽器,瀏覽器收到后再按照一定的規則組裝復原。

這種思路在HTTP中就叫做chunked,也就是分塊傳輸編碼,在響應報文里可以使用“Transfer-Encoding: chunked”來表示,意思就是響應報文中的body不是一次性發送的,而是分成了許多的塊逐次發送的。

大家要注意的一點是,一個響應報文的長度要么已知,要么未知,不可能即知又不知,什么意思呢?就是Transfer-Encoding: chunked和Content-length是互斥的,不能同時出現在響應頭里。

八、范圍請求

有了分塊傳輸,我們可以把一份體積龐大的數據逐一發送,解決大文件在傳輸過程中的卡死問題。我們還是拿視頻來舉例,你在騰訊視頻或者愛奇藝上看電視劇,看的正開心呢,突然彈出來一個視頻內廣告,或者你不想看電視劇的開頭和結尾,你會通過拖動進度條來跳過這部分內容,那這中實現就需要用到范圍請求。

換句話說,我們希望可以獲取一個大文件的某一塊片段,而分塊傳輸是做不到這點的,分塊傳輸只能在開始傳輸的時候就把塊分好傳給你,無法確定我需要的某一個范圍的數據。

解決這樣的問題就需要用到范圍請求了,范圍請求允許客戶端在請求頭里使用專用字段來表示只獲取整個文件的一部分。

范圍請求并不是Web服務器必備的功能,可以實現也可以不實現,所以服務器必須在響應頭里使用字段“Accept-Ranges: bytes”明確的告知客戶端我是支持范圍請求的。如果不支持的話可以用“Accept-Ranges: none”告知客戶端,或者直接就不發送Accept-Ranges字段。

客戶端使用“Range”作為范圍請求的請求頭格式是“bytes=x-y”,x和y就是以字節為單位的范圍數據了,x必須從0開始,比如0-9是指前10個字節,以此類推。

當服務器收到Range字段后,就會做四件事:

首先服務器會檢查你傳過來的Range范圍是否合法,不合法的范圍服務器會直接甩給你一個416,告訴你請求的數據范圍是不合法的。

其次,如果范圍合法,那么服務器則會根據你的范圍讀取文件的片段,返回206狀態碼,也就是Partial Content,表示返回了原數據的一部分。

服務器在返回部分數據的時候會加上一個Content-Range響應頭,告訴客戶端實際的偏移量和資源的總大小,格式是這樣的“bytes x-y/length”。

最后就是發送數據了。

不僅僅是看視頻拖拽進度可以用到范圍請求,下載時候的多端下載和斷點續傳,實際上也是基于它來實現的,這個我們下一章實踐的時候再說。

九、多段數據

基于范圍請求,我們還可以請求不止一個范圍的片段,也就是一次性請求多段數據。這種情況需要用到一個特殊的MIME類型:multipart/byterange,表示報文的body是由多段字節序列組成的,并且還需要一個boundary=xxx來給出段之間的分割標記。就像這樣:

Content-Type: multipart/byteranges; boundary=00000000001

這個boundary=00000000001就是分割標記,開始以--00000000001開始,--00000000001--結束。

嗯……這么說理論肯定有點模糊,我們下一篇動手實踐的時候就可以清楚的看到它的形式是什么樣子的了。

總結

本篇我們主要聊了兩件事,一個是文件、另外一個就是傳輸文件。文件相關的我們聊了文件的類型、語言類型、簡單壓縮等等,傳輸文件則主要有兩個部分,一個是分塊傳輸、一個是分段傳輸。就這點東西,沒了,全是理論。

另外,我還要強調一下第四部分聊的語言類型和國際化的問題,實際上在HTTP中的國際化,是指你傳輸的文件內的數據語言,并不是我們在前端單頁應用中使用的國際化插件,這兩者是有差別的。 

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2023-09-11 11:53:51

物聯網協議物聯網

2014-06-18 09:25:07

HTTP

2022-04-28 06:49:39

區塊鏈NFT

2024-12-09 08:14:25

2019-05-08 09:43:00

Elasticsear LuceneJava

2022-09-30 08:16:38

令牌客戶端隱藏式

2010-06-08 10:36:14

HTTP協議基礎概念

2014-10-22 09:36:41

TCPIP

2015-10-09 15:07:02

HTTP網絡協議

2017-05-26 10:35:13

前端HTTP

2009-08-03 11:21:47

ASP.NET編程模型

2020-07-09 08:14:43

TCPIP協議棧

2015-09-15 13:48:01

網絡協議HTTP Client

2009-02-26 14:44:34

2010-06-08 12:31:15

HTTP協議實體

2010-07-01 16:01:05

HTTP協議

2023-11-27 08:57:24

GoGET

2020-06-17 21:39:11

HTTP協議服務器

2018-03-12 11:22:48

HTTP面試狀態碼

2021-04-30 19:38:42

網絡安全WebHTTP
點贊
收藏

51CTO技術棧公眾號

国产精品网曝门| 奇米影视一区二区三区小说| 亚洲精品乱码久久久久久金桔影视 | 色999日韩欧美国产| 人妻巨大乳一二三区| 亚洲优女在线| 亚洲人成亚洲人成在线观看图片| 精品国产一区二区三区久久久久久 | 高清在线观看av| 韩国成人在线视频| 日本国产精品视频| 中文字幕在线有码| 国产欧美日韩视频在线| 日韩欧美成人午夜| 精品久久久久久中文字幕2017| 成人日韩欧美| 欧美激情一区二区三区蜜桃视频| 99视频免费观看| 亚洲成人av网址| 激情久久五月| 久久精品久久久久| 新91视频在线观看| 另类尿喷潮videofree| 欧美日韩国产免费一区二区| 国产亚洲精品网站| 男女羞羞视频在线观看| 亚洲欧美在线高清| 欧美自拍资源在线| 色屁屁草草影院ccyycom| 国内成人精品2018免费看| 国产成人+综合亚洲+天堂| 国产成人精品亚洲男人的天堂| 91日韩欧美| 国产亚洲成av人片在线观看桃| 亚洲中文字幕一区| 1204国产成人精品视频| 欧美一区二区三区视频免费播放| 国产一二三区av| 午夜日韩成人影院| 日韩欧美国产黄色| 男女激情无遮挡| 免费毛片在线看片免费丝瓜视频| 中文字幕亚洲不卡| 亚洲欧美在线网| 2021av在线| 日本一区二区三区国色天香 | 成人aaaa| 在线电影中文日韩| 国精产品一区二区三区| 青青操综合网| 国产婷婷97碰碰久久人人蜜臀 | 不卡av电影在线观看| 岛国片在线免费观看| 欧美亚洲国产精品久久| 亚洲天堂男人天堂女人天堂| 国产成人无码精品久久二区三| 亚洲精品推荐| 亚洲欧洲av一区二区| 久久精品一区二区免费播放| 天天久久夜夜| 亚洲欧洲在线播放| 一级片视频免费看| 日韩欧美三级| 久久亚洲电影天堂| 九九在线观看视频| 亚洲美女毛片| 欧美综合在线观看| 在线观看视频中文字幕| 精品亚洲国内自在自线福利| 成人激情视频在线观看| 亚洲精品久久久久久久久久| 成人国产一区二区三区精品| 久久青青草综合| 国产日产精品久久久久久婷婷| 国产精品无遮挡| 三年中文高清在线观看第6集| 91网在线看| 懂色av中文一区二区三区天美 | 国产午夜在线播放| 日韩电影一区二区三区| 成人啪啪免费看| 亚洲精品一区二区三区四区| 99国产一区二区三精品乱码| 日本视频精品一区| 理论片午午伦夜理片在线播放| 亚洲黄网站在线观看| 天堂…中文在线最新版在线| 91福利精品在线观看| 欧美一区二区三区四区高清| 99精品一区二区三区无码吞精| 国产精品免费不| 欧美成人网在线| 日韩美一区二区| 国产麻豆精品在线观看| 久久人人97超碰人人澡爱香蕉| 又爽又大又黄a级毛片在线视频| 亚洲综合色在线| 91激情视频在线| 99精品国产一区二区三区2021| 亚洲欧美在线免费| 九九精品在线观看视频| 日韩高清在线观看| 官网99热精品| 香蕉视频在线免费看| 黄色精品在线看| 午夜免费福利网站| 残酷重口调教一区二区| 91精品国产高清自在线| 国产伦精品一区二区三区四区| 91免费看视频| 激情五月婷婷六月| 国产精品久久久久久妇女| 精品第一国产综合精品aⅴ| 免费黄色在线网址| 在线亚洲伦理| 粉嫩av免费一区二区三区| 一区二区三区视频网站| 欧美性xxxxx极品| 午夜性福利视频| 99久久99久久精品国产片桃花 | 开心激情综合| 久久亚洲精品一区二区| 日韩乱码一区二区三区| 91久色porny| 97视频在线免费| 精品欧美视频| 久久精品亚洲一区| 伊人久久中文字幕| 久久色在线观看| 欧美丰满熟妇bbbbbb百度| 99久久婷婷国产综合精品青牛牛 | 国产一区二区视频在线| 亚洲一区二区三区免费观看| 日韩欧美一区二区三区在线观看| 亚洲国产精品人人爽夜夜爽| 久久久久久久久毛片| 精东粉嫩av免费一区二区三区| 午夜精品电影在线观看| 午夜日韩成人影院| 亚洲日本成人女熟在线观看| 亚洲免费在线视频观看| 99久久综合国产精品| 久久久久免费看黄a片app| caoporn成人| 高清欧美性猛交| 欧洲精品久久一区二区| 亚洲第一精品在线| 亚洲国产精品成人综合久久久| 夜夜精品视频| 欧美精品在线一区| 欧美日韩电影免费看| 国产一区二区三区18 | 日韩三区在线观看| 久久久久久久麻豆| 国产毛片精品视频| 青青在线视频免费观看| 盗摄系列偷拍视频精品tp| 欧美激情乱人伦| 丰满肉肉bbwwbbww| 亚洲h精品动漫在线观看| 波多野结衣有码| 久久久久欧美精品| 亚洲精品中文字幕乱码三区不卡| 婷婷精品久久久久久久久久不卡| 日韩中文在线观看| 国产高潮流白浆喷水视频| 亚洲曰韩产成在线| 国产三级视频网站| 日本最新不卡在线| 麻豆中文字幕在线观看| 亚洲性视频在线| 97av在线视频| 国产粉嫩一区二区三区在线观看| 欧美视频一区在线观看| 五月婷婷一区二区| 91影院在线免费观看| 亚洲精品一二三四五区| 91精品久久久久久久蜜月| 高清日韩一区| 日本另类视频| 欧美高清第一页| 毛片免费在线| 日韩无一区二区| 青青视频在线免费观看| 亚洲人成电影网站色mp4| 精品一区二区视频在线观看| 日本 国产 欧美色综合| 黄色成人在线免费观看| 欧美**字幕| 99在线观看视频| 二吊插入一穴一区二区| 欧美日韩高清在线观看| 国产专区在线| 欧美v日韩v国产v| 一级黄色在线观看| 亚洲自拍偷拍麻豆| 久久久无码人妻精品一区| 国产麻豆精品95视频| 成人黄色片视频| 欧美日韩精品一本二本三本| 日韩在线三级| 国产精品玖玖玖在线资源| 国产精品一区二区久久久久| av白虎一区| 久久夜色精品国产欧美乱| 免费资源在线观看| 精品久久久久久最新网址| 一级片视频播放| 一本色道亚洲精品aⅴ| 久久久久免费看| 亚洲图片激情小说| 国产在线观看h| 99国产精品久久久久久久久久 | 久久天天躁狠狠躁夜夜躁2014| 青青草在线免费视频| 欧美不卡一区二区三区四区| 亚洲一区中文字幕永久在线| 欧美性猛交xxxx免费看| 久久精品视频久久| 亚洲最新视频在线播放| 羞羞在线观看视频| 国产亚洲美州欧州综合国| 久久性爱视频网站| 国产精品羞羞答答xxdd| 污污的视频免费| 美女视频免费一区| 国产又大又硬又粗| 一区二区三区四区五区精品视频| 成人国产在线看| 五月久久久综合一区二区小说| 亚洲精品一卡二卡三卡四卡| 精品日韩免费| 日韩午夜视频在线观看| 久久av免费| 日本高清不卡三区| 欧美日韩国产传媒| 色就是色欧美| 欧美另类69xxxxx| 日韩欧美亚洲v片| 国内黄色精品| 日韩国产欧美精品| 成人情趣视频网站| 亚洲高清资源综合久久精品| 日本高清免费电影一区| 日本一区二区三区四区高清视频 | 日韩欧美不卡在线| 亚洲婷婷免费| 国产69精品久久久久999小说| 亚洲大胆av| 男人揉女人奶房视频60分| 亚洲视频播放| 国产成人精品视频ⅴa片软件竹菊| 老色鬼久久亚洲一区二区| 久久久久久三级| 激情综合色综合久久| 日韩欧美理论片| 国产成人午夜精品5599| 中文字幕人妻一区| 久久日韩精品一区二区五区| av黄色在线免费观看| 中文字幕在线不卡视频| 欧产日产国产v| 亚洲1区2区3区4区| 中文字幕在线天堂| 欧美日韩aaaaaa| 亚洲精品福利网站| 亚洲精品丝袜日韩| 岛国在线视频免费看| 精品国产欧美一区二区三区成人| 国产黄大片在线观看画质优化| 欧美国产亚洲视频| 日本免费久久| 亚洲free嫩bbb| 卡通动漫国产精品| 亚洲欧洲日韩精品| 在线播放亚洲| 在线免费视频a| 国产乱理伦片在线观看夜一区| 91传媒理伦片在线观看| 久久久久久久性| 26uuu成人网| 第一福利永久视频精品| 国产精品福利电影| 亚洲国内精品在线| 一级日本在线| 91精品国产91久久久久久| 国产成人a视频高清在线观看| av一区二区三区四区电影| 中文精品一区二区| 路边理发店露脸熟妇泻火| 99在线热播精品免费99热| 中文字幕第88页| av一区二区三区黑人| 欧美日韩国产一二三区| 午夜久久久久久久久久一区二区| 国产九色91回来了| 精品成人a区在线观看| 日本视频在线免费观看| 26uuu久久噜噜噜噜| 国产专区精品| 午夜欧美性电影| 亚洲精品乱码| 成年网站免费在线观看| 久久久久久久精| 久久精品美女视频| 51午夜精品国产| 国产在线播放av| 国语自产精品视频在线看| 亚洲欧美专区| 婷婷久久伊人| 性欧美xxxx大乳国产app| 欧美xxxx黑人| 国产精品毛片大码女人| 凹凸精品一区二区三区| 亚洲国产精品女人久久久| av免费网站在线观看| 国产精品专区h在线观看| 亚洲+变态+欧美+另类+精品| 国产成人一区二区三区别| 久久99精品视频| 欧美亚洲色综久久精品国产| 精品福利樱桃av导航| 亚洲AV无码精品自拍| 欧美插天视频在线播放| 国产95亚洲| 一区二区三区欧美成人| 奇米亚洲午夜久久精品| 西西444www无码大胆| 黑人精品xxx一区| 手机在线观看毛片| 韩剧1988免费观看全集| 97se亚洲| 少妇高潮毛片色欲ava片| 国产成人aaa| 久久国产在线视频| 欧美v亚洲v综合ⅴ国产v| 天堂av资源在线观看| 91精品国产一区二区三区动漫| 99热国内精品永久免费观看| 九色porny自拍| 中文字幕国产一区| 中文字幕免费观看视频| 中文字幕精品久久久久| 欧美高清你懂的| 综合视频在线观看| 狠狠v欧美v日韩v亚洲ⅴ| www欧美com| 日韩一区二区三区四区| 调教一区二区| 国产在线播放一区二区| 国产精品社区| 永久免费看mv网站入口78| 日本久久一区二区| 337p日本欧洲亚洲大胆鲁鲁| 国产一区二区在线播放| 亚洲国产精品成人| 超碰人人cao| 欧美日韩免费在线观看| 九色视频网站在线观看| 国产精品视频自拍| 亚洲国产精品日韩专区av有中文 | 女性隐私黄www网站视频| 国产欧美日韩卡一| 国产又黄又大又粗的视频| 欧美大胆在线视频| 女人抽搐喷水高潮国产精品| 日韩av在线综合| 亚洲欧洲综合另类| 黄色片网站免费在线观看| 奇米四色中文综合久久| 欧美高清视频手机在在线| 国产sm在线观看| 欧美性xxxx极品hd欧美风情| 求av网址在线观看| 国产精品国产一区二区| 久久久久免费| 国产免费一区二区三区四区| 亚洲国产高清自拍| 亚洲日本网址| a级黄色片免费| 久久久精品天堂| 99国产精品99| 国产成人精品久久亚洲高清不卡| 亚洲美女视频| 久久久久久久久免费看无码| 91精品麻豆日日躁夜夜躁| 欧美xxxhd| 法国空姐在线观看免费| 久久在线免费观看| 97人妻精品一区二区三区软件| 97av在线播放| 伊人青青综合网| 精品欧美一区二区久久久| 精品国产亚洲在线| 成人自拍视频网| 男人天堂1024| 一区二区三区精品在线观看| 亚洲成a人v欧美综合天堂麻豆| 狠狠色伊人亚洲综合网站色| 国产一区在线看|