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

硬核知識(shí)點(diǎn)——瀏覽器中的三類(lèi)五種請(qǐng)求

系統(tǒng) 瀏覽器
對(duì)瀏覽器的請(qǐng)求進(jìn)行劃分,可以分為三類(lèi):一般請(qǐng)求、Ajax請(qǐng)求、WebSocket請(qǐng)求,對(duì)于每種請(qǐng)求都有不同的產(chǎn)生方式,今天就以這個(gè)思想為主線來(lái)一起嘮一嘮。

 [[352281]]

對(duì)瀏覽器的請(qǐng)求進(jìn)行劃分,可以分為三類(lèi):一般請(qǐng)求、Ajax請(qǐng)求、WebSocket請(qǐng)求,對(duì)于每種請(qǐng)求都有不同的產(chǎn)生方式,今天就以這個(gè)思想為主線來(lái)一起嘮一嘮。

一、一般請(qǐng)求

此處說(shuō)的一般請(qǐng)求就是指瀏覽器會(huì)直接顯示響應(yīng)體數(shù)據(jù),這些請(qǐng)求會(huì)刷新\跳轉(zhuǎn)頁(yè)面。換個(gè)更加容易理解的說(shuō)法吧,指的就是控制臺(tái)Network面板中除了XHR和WS部分顯示的請(qǐng)求。例如js、css、img資源。

二、Ajax請(qǐng)求

Ajax請(qǐng)求也是由瀏覽器發(fā)出,但是不會(huì)對(duì)界面進(jìn)行任何操作,只是調(diào)用監(jiān)視的回調(diào)函數(shù)并傳入響應(yīng)相關(guān)數(shù)據(jù),發(fā)出Ajax請(qǐng)求可以通過(guò)三種方式:XHR、Fetch、Axios,其余的均不是Ajax請(qǐng)求。

2.1 XHR

最早將Ajax推到歷史舞臺(tái)的關(guān)鍵技術(shù)就是XMLHttpRequest(XHR)對(duì)象,雖然目前已經(jīng)有了一些過(guò)時(shí)的嫌疑,但是還是很有必要提一下它。下面就按照一個(gè)請(qǐng)求的整個(gè)生命周期來(lái)看一看該技術(shù)。

一、 對(duì)象的實(shí)例化

既然要使用XHR,第一步就是要將該對(duì)象實(shí)例化

  1. const xhr = new XMLHttpRequest(); 

二、初始化操作

將對(duì)象實(shí)例化后是不是緊接著就需要進(jìn)行初始化操作,到底該請(qǐng)求要發(fā)給誰(shuí)、通過(guò)什么請(qǐng)求發(fā)、該請(qǐng)求到底是同步發(fā)還是異步發(fā)

  1. xhr.open(method, url, async) 

三、請(qǐng)求頭設(shè)置

了解網(wǎng)絡(luò)的同學(xué)本肯定知道請(qǐng)求頭的概念,既然要與后端打交道,請(qǐng)求頭還是有必要進(jìn)行設(shè)置的(默認(rèn)的配置不一定滿足我們高大上的需求),例如想發(fā)送json格式的內(nèi)容,這個(gè)時(shí)候就需要設(shè)置Content-Type為application/json

  1. xhr.setRequestHeader('Content-Type''application/json'); 

四、接收請(qǐng)求的準(zhǔn)備工作

瀏覽器除了設(shè)置常見(jiàn)的請(qǐng)求頭外,還需要指定響應(yīng)數(shù)據(jù)類(lèi)型,得到響應(yīng)后后自動(dòng)解析。目前支持的類(lèi)型有string、arraybuffer、blob、document、json、text、ms-stream。

  1. xhr.responseType('json'

五、發(fā)送請(qǐng)求

前期工作都準(zhǔn)備好了,接下來(lái)就是激動(dòng)人心的時(shí)刻了,看好呀,要按開(kāi)始鍵發(fā)送請(qǐng)求啦。

  1. xhr.send(data) 

六、監(jiān)聽(tīng)響應(yīng)

我喊一聲美女,人家肯定要回應(yīng)一下呀,畢竟顏值在這,不回應(yīng)該是多么不給面子的一件事呀!!!為了等待人家的回應(yīng),則需要分三步進(jìn)行:

  1. 進(jìn)入監(jiān)聽(tīng)狀態(tài),放在這就是通過(guò)onreadystatechange進(jìn)行監(jiān)聽(tīng)。
  2. 等待正面回應(yīng)。readyStatus表征目前的狀態(tài),當(dāng)readyStatus為4(請(qǐng)求完成),響應(yīng)算是接收到了
  3. 處理響應(yīng)。不能一股腦的處理全部響應(yīng)吧,畢竟也是要面子的人,我肯定只希望接收我喜歡的信息吧,就喜歡狀態(tài)碼在200~299之間的,別的一概pass掉。
  1. xhr.onreadystatechange = () => { 
  2.     if (xhr.readyState == 4) { 
  3.         if (xhr.status >= 200 && xhr.status < 300) { 
  4.             console.log(xhr.response); 
  5.         } 
  6.     } 

七、中斷請(qǐng)求

正常流程算是走完了,肯定還有非正常流程,發(fā)起請(qǐng)求后我后悔了,不想得到對(duì)方的回應(yīng)了,此時(shí)仍然有辦法——中斷請(qǐng)求

  1. xhr.abort() 

注:本文不是文檔學(xué)習(xí),詳細(xì)使用請(qǐng)見(jiàn)https://developer.mozilla.org/zh-CN/docs/Web/API/XMLHttpRequest

2.2 Fetch

長(zhǎng)江后浪推前浪,互聯(lián)網(wǎng)技術(shù)發(fā)展這么快,出現(xiàn)了新的技術(shù)(Fetch)能夠執(zhí)行XMLHttpRequest對(duì)象的所有任務(wù),該技術(shù)使用更容易,接口更現(xiàn)代化,能夠在Web工作線程等現(xiàn)代Web工具中使用。(Fetch必須是異步,XMLHttpRequest可同步可異步)。

  1. const payload = JSON.stringify({ 
  2.     test: 'test' 
  3. }); 
  4.  
  5. let headersObj = new Headers({ 
  6.     'Content-Type':'application/json' 
  7. }); 
  8.  
  9. let request = new Request('http://localhost:8080'); 
  10.  
  11. fetch(request, { 
  12.     method: 'POST'
  13.     body: payload, 
  14.     headers: headersObj 
  15. }) 
  16. .then((response) => response.json()) 
  17. .then(console.log) 

上述代碼雖然簡(jiǎn)單,但是已經(jīng)囊括了Fetch API中所有的概念:fetch、Headers、Request、Response、Body混入。

1.fetch()

fetch()方法暴露在全局作用域中,包括主頁(yè)面執(zhí)行線程、模塊和工作線程,調(diào)用該方法,瀏覽器就會(huì)向給定URL發(fā)送請(qǐng)求。

(1)fetch(input[, init]):接收兩個(gè)參數(shù),input為要獲取的資源,__init為一個(gè)配置對(duì)象,配置需要傳入的參數(shù),滿足更多復(fù)雜的需求

(2)返回一個(gè)promise對(duì)象,從而鏈?zhǔn)降倪M(jìn)行處理

2.Headers

相當(dāng)于 response/request 的頭信息,可以使你查詢到這些頭信息,或者針對(duì)不同的結(jié)果做不同的操作。該對(duì)象包含檢索、設(shè)置、添加、刪除,設(shè)置完自己需要的頭信息后就可以將其掛載到fetch中的配置信息中。

3.Request

該對(duì)象是獲取資源請(qǐng)求的接口,暴露了請(qǐng)求和相關(guān)信息??梢詫⒃搶?duì)象的實(shí)例作為fetch函數(shù)中的第一個(gè)參數(shù)

4.Response

該對(duì)象是獲取資源響應(yīng)的接口,并暴露了響應(yīng)的相關(guān)信息。

5.Body混入

提供了與 response/request 中的 body 有關(guān)的方法,可以定義它的內(nèi)容形式以及處理方式。在Body混入中提供了5個(gè)方法,用于將ReadableStream轉(zhuǎn)存到緩沖區(qū)的內(nèi)存中,將緩沖區(qū)轉(zhuǎn)換為某種JavaScript對(duì)象類(lèi)型,以及通過(guò)Promise產(chǎn)生結(jié)果。

(1)Body.text():返回Promise,解決將緩沖區(qū)轉(zhuǎn)存得到的UTF-8格式字符串

(2)Body.json():返回Promise,解決將緩沖區(qū)轉(zhuǎn)存得到的JSON

(3)Body.formData():返回Promise,解決將緩沖區(qū)轉(zhuǎn)存得到的FormData實(shí)例

(4)Body.arrayBuffer():返回Promise,解決將緩沖區(qū)轉(zhuǎn)存得到的ArrayBuffer

(5)Body.text():返回Promise,解決將緩沖區(qū)轉(zhuǎn)存得到的Blob實(shí)例

2.3 Axios

Axios應(yīng)該是目前前端最流行的Ajax請(qǐng)求庫(kù),具有以下特點(diǎn):

  1. 基于Promise的異步Ajax請(qǐng)求庫(kù)
  2. 瀏覽器端/node端都可以使用
  3. 支持請(qǐng)求/響應(yīng)攔截器
  4. 支持請(qǐng)求取消
  5. 請(qǐng)求/響應(yīng)數(shù)據(jù)轉(zhuǎn)換
  6. 批量發(fā)送請(qǐng)求
  1. // 默認(rèn)配置 
  2. axios.defaults.baseURL = 'http://localhost:8080' 
  3.  
  4. // 請(qǐng)求攔截器 
  5. axios.interceptors.request.use( 
  6.     config => { 
  7.         console.log('request interceptor resolved'); 
  8.         return config; 
  9.     }, 
  10.     error => { 
  11.         console.log('request interceptor rejected'); 
  12.         return Promise.reject(error); 
  13.     } 
  14. ); 
  15.  
  16. // 響應(yīng)攔截器 
  17. axios.interceptors.response.use( 
  18.     response => { 
  19.         console.log('response interceptor resolved'); 
  20.         return response; 
  21.     }, 
  22.     error => { 
  23.         console.log('response interceptor rejected'); 
  24.         return Promise.reject(error); 
  25.     } 
  26. ); 
  27.  
  28. let cancel; // 用于保存取消請(qǐng)求的函數(shù) 
  29. axios('/', { 
  30.     method: 'post'
  31.     headers: { 
  32.         'Content-Type''application/json' 
  33.     }, 
  34.     data: { 
  35.         test: 'test' 
  36.     }, 
  37.     // 取消請(qǐng)求 
  38.     cancelToken: new axios.CancelToken((c) => { 
  39.         cancel = c; 
  40.     }) 
  41. }) 
  42. .then((response) => { 
  43.     console.log(response.data) 
  44. }) 
  45.  
  46. // 若想取消請(qǐng)求,直接調(diào)用下面函數(shù) 
  47. // cancel(); 

上述代碼已經(jīng)囊括了Axios庫(kù)中大多數(shù)核心內(nèi)容,包括axios()函數(shù)、默認(rèn)設(shè)置、請(qǐng)求/響應(yīng)攔截器、取消請(qǐng)求(內(nèi)部設(shè)計(jì)的很巧妙,想知道的請(qǐng)看下期講解)

1.axios()

完成相應(yīng)配置并發(fā)送請(qǐng)求,調(diào)用方式有多種語(yǔ)法糖,同學(xué)們可以按需使用。

2.默認(rèn)設(shè)置

通過(guò)axios.defaults.xxx可以完成很多全局配置,提高代碼的復(fù)用。(提高復(fù)用真是完美的編碼思想)

3.請(qǐng)求/響應(yīng)攔截器

請(qǐng)求攔截器的作用就是在請(qǐng)求發(fā)送之前先進(jìn)行一些列的處理;響應(yīng)攔截器的作用就是觸發(fā)請(qǐng)求的回調(diào)之前執(zhí)行響應(yīng)攔截器,對(duì)響應(yīng)做一些預(yù)處理操作

4.取消請(qǐng)求

通過(guò)配置cancelToken對(duì)象并緩存用于取消請(qǐng)求的cancel函數(shù),在需要的時(shí)候觸發(fā)該函數(shù)取消請(qǐng)求(內(nèi)部其實(shí)就是調(diào)用的xhr.abort())

對(duì)于更多使用見(jiàn)詳細(xì)使用文檔https://github.com/axios/axios

三、WebSocket請(qǐng)求

下面來(lái)聊聊這個(gè)傳奇協(xié)議——WebSocket,WebSockt通過(guò)一個(gè)長(zhǎng)時(shí)連接實(shí)現(xiàn)與服務(wù)器全雙工、雙向的通信。(特別提醒:同源策略不適用于WebSocket)

  1. let ws = new WebSocket('ws://127.0.0.1:8080'); 
  2.  
  3. // 在連接建立成功時(shí) 
  4. ws.onopen = () => { 
  5.     ws.send('websocket'
  6.  
  7. // 在接收到消息時(shí) 
  8. ws.onmessage = (event) => { 
  9.     console.log(event.data); 
  10.  
  11. // 在發(fā)生錯(cuò)誤時(shí) 
  12. ws.onerror = () => { 
  13.     console.log('error'); 
  14.  
  15. // 在連接關(guān)閉時(shí) 
  16. ws.onclose = () => { 
  17.     console.log('close'); 

上述代碼已經(jīng)囊括大部分WebSocket的概念,實(shí)例化WebSocket建立與服務(wù)端的連接;通過(guò)事件監(jiān)聽(tīng)即可了解WebSokcet連接目前的狀態(tài);通過(guò)send()函數(shù)即可向服務(wù)端發(fā)送內(nèi)容;當(dāng)服務(wù)端發(fā)送消息時(shí)即可觸發(fā)message事件,通過(guò)event.data屬性獲取其有效載荷。

本篇文章雖然比較簡(jiǎn)單,但是可以幫助我們認(rèn)清楚請(qǐng)求其實(shí)是分為三類(lèi)的,這是我最最最大的收獲,歡迎小伙伴們能夠給出自己的想法。

本文轉(zhuǎn)載自微信公眾號(hào)「執(zhí)鳶者」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系執(zhí)鳶者公眾號(hào)。

 

責(zé)任編輯:武曉燕 來(lái)源: 執(zhí)鳶者
相關(guān)推薦

2022-02-14 22:04:50

瀏覽器Observer監(jiān)聽(tīng)

2021-04-29 10:01:30

JavaMathJava編程

2021-07-19 07:02:10

瀏覽器進(jìn)程單進(jìn)程瀏覽器

2011-09-09 17:39:58

WebKit瀏覽器

2010-07-30 16:06:41

2021-01-15 08:35:49

Zookeeper

2021-07-14 07:00:53

瀏覽器技巧前端

2017-10-24 09:53:28

2021-06-01 09:12:47

前端瀏覽器緩存

2010-09-28 15:33:18

DHCP服務(wù)器應(yīng)用

2022-04-29 09:11:14

CORS瀏覽器

2012-04-23 15:49:04

2010-04-05 21:57:14

Netscape瀏覽器

2025-01-13 11:57:40

2011-12-02 15:20:33

瀏覽器歐朋瀏覽器QQ瀏覽器

2010-07-19 13:49:52

autoTelnet

2020-09-23 16:56:51

Python語(yǔ)言技術(shù)

2020-09-23 13:45:07

Python編程語(yǔ)言

2021-10-08 08:20:06

LinuxChromium瀏覽器

2010-08-17 14:56:00

HCNE認(rèn)證
點(diǎn)贊
收藏

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

精品久久久久久亚洲| 国产精品毛片久久久| 精品日本12videosex| 国产精品欧美综合在线| 久久久久久尹人网香蕉| 手机在线看福利| 久久久久亚洲av成人片| 巨胸喷奶水www久久久免费动漫| 国产成人在线免费| 正在播放欧美一区| 国产精品97在线| 亚洲男人第一天堂| 午夜精品久久| 日韩一区二区高清| 中文字幕欧美日韩一区二区三区| 无码视频一区二区三区| 欧美天堂影院| 五月天精品一区二区三区| 亚洲jizzjizz日本少妇| 国产在线观看免费视频软件| 国模一区二区| 国产日韩欧美高清在线| 日韩av日韩在线观看| 久久人人妻人人人人妻性色av| 精精国产xxxx视频在线中文版| 欧美激情电影| 欧美日韩精品三区| 一区二区精品在线| 一级黄色片免费| 国产精品成人一区二区不卡| 欧美日韩国产天堂| 欧美三级在线观看视频| 天堂在线观看免费视频| 亚洲精选国产| 亚洲欧美精品一区| 超碰在线人人爱| 黄网站在线播放| 国产一区二区三区免费播放| 欧美成人剧情片在线观看| 下面一进一出好爽视频| 丰乳肥臀在线| 91亚洲精品一区二区乱码| 欧美亚洲在线视频| 日韩一级av毛片| 午夜精品久久久久久毛片| 亚洲免费资源在线播放| 粉嫩av四季av绯色av第一区| 国产成人精品一区二三区| 亚洲精品一级二级三级| 欧美又粗又大又爽| 路边理发店露脸熟妇泻火| 日本精品久久久久久| 久久电影一区| 日韩有码在线播放| 99热超碰在线| 日本欧美不卡| 91国产福利在线| 99精品一级欧美片免费播放| 欧美熟妇交换久久久久久分类| 国产一区免费电影| 亚洲综合精品一区二区| 国产手机av在线| 国产欧美另类| 日韩专区在线播放| 香蕉久久久久久久| 国产精品调教| 亚洲国产精品久久久| 超碰在线97免费| 久久久国产精品网站| 一区二区激情视频| 欧美日韩一区二| 超碰在线观看99| 奇米精品一区二区三区在线观看| 欧美肥老妇视频| 精品无人区无码乱码毛片国产| 色天下一区二区三区| 91精品国产欧美一区二区18| 91精品91久久久中77777老牛| jizz亚洲| 91麻豆国产福利在线观看| 91久久国产精品| 日本免费在线观看视频| 欧美日本一区二区高清播放视频| 亚洲视频在线观看| 欧美做受高潮中文字幕| 国产精品对白久久久久粗| 日韩激情视频在线播放| 色偷偷中文字幕| 天天免费亚洲黑人免费| 亚洲综合色自拍一区| 欧美综合在线播放| 成人综合网站| 在线亚洲一区观看| 人妻久久久一区二区三区| 9i看片成人免费高清| 亚洲高清不卡在线观看| 亚洲啊啊啊啊啊| 国产伦理精品| 亚洲成人你懂的| 国产a级片免费观看| 国产h片在线观看| 欧美在线免费观看视频| a级大片免费看| 校园春色另类视频| 久久亚洲精品成人| 日韩在线不卡av| 亚洲经典三级| 91精品国产综合久久男男| 亚洲精品一区二区二区| 老妇喷水一区二区三区| 国产va免费精品高清在线观看| www.天天色| 欧美日韩 国产精品| 欧美在线视频一区二区| a v视频在线观看| 久久国产成人午夜av影院| 国产精品视频自拍| 中文字幕在线播放不卡| 美女高潮久久久| 国产自摸综合网| 香蕉视频网站在线| 91在线播放网址| 老司机午夜网站| 草民电影神马电影一区二区| 亚洲福利小视频| 丰满少妇被猛烈进入一区二区| 亚洲一区二区日韩| 欧美日本国产在线| 日本少妇做爰全过程毛片| 久久99精品视频| 欧美黑人3p| 国产社区精品视频| 亚洲变态欧美另类捆绑| 国产性生活毛片| 亚洲瘦老头同性70tv| 欧美国产中文字幕| 夜夜躁很很躁日日躁麻豆| 国产在线视频一区二区三区| 日韩精品资源| 高潮毛片在线观看| 亚洲成人资源网| 人妻体体内射精一区二区| 日韩电影免费网址| 久久艳片www.17c.com| 影音先锋国产在线| 中文字幕乱码久久午夜不卡| 色呦呦网站入口| sis001亚洲原创区| 在线免费观看日本欧美| 国产精品300页| 色综合蜜月久久综合网| 国产精品久久久一区| 99久久久久成人国产免费| 国产精品乱子久久久久| 亚洲美女性囗交| 美国成人xxx| 日韩中文字幕久久| 中文字幕免费播放| 国产精品久久久久一区二区三区 | 国产精品伦子伦免费视频| 精品乱码一区二区三四区视频| 亚洲国产精华液网站w| 中文字幕欧美人妻精品一区| 国产一区2区在线观看| 亚洲国产婷婷香蕉久久久久久| 日本成人免费视频| 黄色成人91| 国产欧亚日韩视频| 久草资源在线观看| 日韩免费性生活视频播放| 91国模少妇一区二区三区| 中文字幕一区二区三区乱码图片 | 北条麻妃在线一区二区| 国产免费一区二区三区最新不卡| 亚洲精品v日韩精品| 欧美三级一级片| 精品产国自在拍| 国产精品igao视频| 国产鲁鲁视频在线观看特色| 精品av综合导航| 成人免费毛片视频| 亚洲日本乱码在线观看| 能看的毛片网站| 天堂美国久久| 精品国产乱码久久久久久丨区2区 精品国产乱码久久久久久蜜柚 | 四虎国产精品成人免费影视| 欧美国产激情18| 国产私人尤物无码不卡| 偷窥少妇高潮呻吟av久久免费| 成年人网站免费看| 亚洲久久一区二区| 日韩国产欧美精品| 亚洲大奶少妇| 久久成人精品一区二区三区| 亚洲免费不卡视频| 欧美午夜精品一区| 国产精品成人av久久| 国产精品一区不卡| 日本一级淫片演员| 牛牛影视一区二区三区免费看| 国产精品日韩欧美| 91超碰在线免费| 精品国偷自产在线| 国产又大又长又粗| 国产精品成人一区二区三区夜夜夜 | 国产中文字幕亚洲| 欧美三级网站| 精品视频久久久久久| 91在线看视频| 99国产精品一区| 女同激情久久av久久| 在线欧美视频| 精品国产中文字幕| 蜜桃精品视频| 久久6免费高清热精品| 色视频在线观看| 日本精品免费观看高清观看| 青青草原免费观看| 成人动漫一区二区| 亚欧无线一线二线三线区别| 天堂资源在线亚洲| 91视频最新| 99re6在线精品视频免费播放| 中文字幕无线精品亚洲乱码一区 | 99视频在线免费播放| 亚洲国产老妈| 国产精品v欧美精品v日韩| 国内欧美日韩| 国产精品成久久久久三级| 在线观看麻豆蜜桃| 日韩午夜激情免费电影| 亚洲综合视频在线播放| 欧美无砖专区一中文字| 亚洲综合图片网| 色综合欧美在线| 欧美特黄一级片| 国产精品免费视频一区| 免费一级黄色录像| 国产精品77777| 小早川怜子一区二区三区| 伊人蜜桃色噜噜激情综合| 欧美日韩一区二区三区电影| 国产精品久久久久9999赢消| 一本一本a久久| 欧美电影《睫毛膏》| 中文字幕免费在线不卡| 99久久视频| 婷婷视频在线播放| 婷婷成人基地| 久久香蕉视频网站| 三级精品视频| 蜜桃导航-精品导航| 日韩一级特黄| 成人写真视频福利网| 看黄在线观看| 97免费在线视频| 麻豆网站在线| 精品性高朝久久久久久久| 五月天福利视频| 日韩精品在线播放| 精品美女视频在线观看免费软件 | 天堂av在线| 精品国产一区二区三区四区在线观看 | 亚洲国产成人私人影院tom| 国产精品综合激情| 亚洲精品v日韩精品| 欧美福利视频一区二区| 一本色道久久综合亚洲91 | 日韩欧美一级精品久久| 国精产品一品二品国精品69xx| 亚洲第一精品久久忘忧草社区| 青春草在线观看| 日韩亚洲欧美中文高清在线| 成人国产免费电影| 国内免费精品永久在线视频| 大乳在线免费观看| 日韩视频精品在线| av福利在线导航| 国产精品青青在线观看爽香蕉| 日本一区二区三区播放| 精品国产乱码久久久久久久软件| 欧美系列电影免费观看 | 精品国产鲁一鲁一区二区三区| 国产成人综合视频| 公侵犯人妻一区二区三区| 国产精品久久久久久久久晋中 | 99在线|亚洲一区二区| 艳母动漫在线观看| 国产欧美91| 91小视频在线播放| 日韩vs国产vs欧美| 欧美国产激情视频| 麻豆一区二区三| 星空大象在线观看免费播放| 欧美激情一区二区三区不卡| 黄瓜视频污在线观看| ...中文天堂在线一区| 91麻豆精品国产91久久综合| 亚洲综合视频网| 中文字幕一区二区三区免费看| 亚洲第一免费播放区| 男人天堂久久久| 热re91久久精品国99热蜜臀| 免费一级欧美在线大片| 欧美日韩国产综合视频在线| 久久久久免费av| 免费国产成人av| 99久久99久久免费精品蜜臀| 成人在线观看小视频| 亚洲女与黑人做爰| 一级黄色在线视频| 亚洲国产精品资源| 在线观看的网站你懂的| 欧美精品做受xxx性少妇| 欧美成人黑人| 国产伦精品一区二区三区视频孕妇 | 欧美丝袜自拍制服另类| 男人的天堂a在线| 久久婷婷国产麻豆91天堂| 成人啊v在线| 久久久久久艹| 欧美精品一区二区三区中文字幕| 成年人午夜免费视频| 亚洲少妇诱惑| 亚洲欧美激情一区二区三区| 国产精品久久毛片a| 免费看污视频的网站| 日韩电影在线观看中文字幕| 日韩专区av| 欧美性受xxxx白人性爽| 一区二区三区免费在线看| 久久久久久99| 夜久久久久久| 怡红院一区二区| 亚洲中国最大av网站| 国产成人精品a视频| 亚洲精品国产suv| 另类视频在线| 国产精品白丝jk白祙| 欧美二区视频| 国产乱国产乱老熟300部视频| 9久草视频在线视频精品| 波多野结衣a v在线| 欧美日韩亚洲精品内裤| 亚洲永久精品视频| 北条麻妃久久精品| 国产精品成人**免费视频| 亚洲小说欧美另类激情| 国产剧情一区二区| 免费无遮挡无码永久在线观看视频| 日韩一区二区三区视频在线观看| 国产二区三区在线| 不卡视频一区二区| 综合色就爱涩涩涩综合婷婷| 成人免费在线小视频| 久久伊人蜜桃av一区二区| 91日韩中文字幕| 欧美一区二区三区四区视频| 日本资源在线| 精品国产一区二区三区麻豆小说| 午夜一区在线| 伦伦影院午夜理论片| 亚洲精品精品亚洲| 俄罗斯嫩小性bbwbbw| 26uuu国产精品视频| 欧美人与牛zoz0性行为| www.国产在线视频| 久久精品国产网站| 国产真实乱在线更新| 亚洲成人久久一区| 欧美momandson| 亚洲AV无码成人精品一区| 国产精品一区二区久久精品爱涩 | 女同毛片一区二区三区| 在线视频观看一区| 国产在线观看a| 国产精品日本一区二区 | 91欧美一区二区三区| 亚洲一区二区三区四区五区中文| 亚洲视频久久久| 久久伊人精品一区二区三区| 精品精品国产毛片在线看| 精品久久久久av| 亚洲免费电影在线| 日漫免费在线观看网站| 国产精品久久久久免费a∨| 欧美成人嫩草网站| 丰满少妇在线观看资源站| 欧美三级日韩三级国产三级| 婷婷色在线观看| 国产精品日韩在线播放| 精品1区2区3区4区| 中文字幕伦理片| 亚洲国产成人精品久久| 欧美黑粗硬大| 六月丁香激情网| 亚洲精品乱码久久久久久| 黄视频在线观看免费| 国产精品手机在线| 看片的网站亚洲|