久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

如何實現axios的自定義適配器adapter

瀏覽:117日期:2023-06-03 14:25:28
目錄1. 適配器要實現的功能1.1 promise 和工具1.2 響應的格式1.3 超時設置1.4 主動取消請求2. 編寫自定義適配器3. 將適配器添加到 axios 中4. 總結1. 適配器要實現的功能

我們在基于 axios 實現額外的數據模塊時,應當與 axios 的模式進行對齊。因此在返回的數據格式上,實現的功能上盡量保持一致。

1.1 promise 和工具

所有的適配均應當實現為 Promise 方式。

而且,有些功能的實現,axios 將其下放到了適配器中自己進行實現,例如

url 的拼接:即 baseURL 和 url 的拼接,若存在 baseURL 且 url 為相對路徑,則進行拼接,否則直接使用 url; 參數的拼接:若是 get 請求,需要自行將 object 類型拼接為 url 參數的格式并與 url 拼接完成;

這是自己需要實現的兩個基本的工具方法。

1.2 響應的格式

這里我們要注意到請求接口正常和異常的格式。

接口正常時:

const result = { status: 200, // 接口的http 狀態 statusText: ’ok’, config: ’config’, // 傳入的config配置,原樣返回即可,方便在響應攔截器和響應結果中使用 data: {}, // 真實的接口返回結果};

接口異常時,我們可以看下 axios 源碼中對錯誤信息的處理createError,enhanceError(createError 中調用了 enhanceError),首先會創建一個 error 實例,然后給這個 error 實例添加一個屬性:

module.exports = function enhanceError(error, config, code, request, response) { error.config = config; if (code) {error.code = code; } error.request = request; error.response = response; error.isAxiosError = true; error.toJSON = function toJSON() {return { // Standard message: this.message, name: this.name, // Microsoft description: this.description, number: this.number, // Mozilla fileName: this.fileName, lineNumber: this.lineNumber, columnNumber: this.columnNumber, stack: this.stack, // Axios config: this.config, code: this.code,}; }; return error;};

可以看到,除了正常的錯誤信息外,還加入了很多別的屬性,例如 request, response, config 等。這里我們在自己實現適配器時,最好也要這樣統一編寫,方便更上層的業務層統一處理,避免為單獨的適配器進行特殊處理。

關于 1.1 和 1.2 中的內容,若不進行打包編譯,則需要自己實現。若還要通過 webpack 等打包工具編譯一下的,可以直接引用 axios 中的方法,不用自己實現了,參考官方基于 axios 實現的mock-axios。例如:

import axios from ’axios’;import buildURL from ’axios/lib/helpers/buildURL’;import isURLSameOrigin from ’axios/lib/helpers/isURLSameOrigin’;import btoa from ’axios/lib/helpers/btoa’;import cookies from ’axios/lib/helpers/cookies’;import settle from ’axios/lib/core/settle’;import createError from ’axios/lib/core/createError’;

然后直接使用就行了,不用再進行二次開發。

1.3 超時設置

我們不能無限地等待第三方服務的響應,如果第三方服務無響應或者響應時間過長,應當適時的終止掉。在 axios 中,前端使用了XMLHttpRequest,在 node 端使用了http,來實現接口的請求,兩者都有超時的設定,可以設置 timeout 字段來設置超時的時間,自動取消當前的請求。

像有的發起的請求,自己并沒有超時的設定,例如 jsonp,是用創建一個 script 標簽來發起的請求,這個請求必須等到服務器有響應才會終止(成功或者失敗)。這時,就需要我們自己用一個setTimeout來模擬了,但這樣,即使返回給業務層說“超時了,已取消當前請求”,但實際上請求還在,只不過若超過規定時間,只是不再執行對應的成功操作而已。

1.4 主動取消請求

我們也會有很多并沒有到超時時間,就需要主動取消當前請求的場景,例如在請求返回之前就切換了路由;上次請求還沒響應前,又需要發出新的請求等。都需要主動地取消當前請求。

axios 中已經提供了取消請求的功能,我們只需要按照規則接入即可。我們來看下 XMLHttpRequest 請求器中是怎么取消請求的,在寫自定義請求器時也可以照理使用。

在lib/adapters/xhr.js#L158中:

// 若config中已經配置了cancelTokenif (config.cancelToken) { // Handle cancellation // 若在外城執行了取消請求的方法,則這里將當前的請求取消掉 config.cancelToken.promise.then(function onCanceled(cancel) {if (!request) { return;}// xhr中使用abort方法取消當前請求request.abort();reject(cancel);// Clean up requestrequest = null; });}

我們在寫自己的適配器時,也可以將這段拷貝過去,將內部取消的操作更換為自己的即可。

到這里,若把上面的功能都實現了,就已經完成了一個標準的適配器了。

2. 編寫自定義適配器

每個人需要的適配器肯定也不一樣,復雜度也不一樣,例如有的想接入小程序的請求,我自己想接入客戶端里提供的數據請求方式等。我們這里只是通過實現一個簡單的jsonp適配器來講解下實現方式。

我們以 es6 的模塊方式來進行開發。所有的實現均在代碼中進行了講解。

// 這里的config是axios里所有的配置const jsonpAdapter = (config) => { return new Promise((resolve, reject) => {// 是否已取消當前操作// 因jsonp沒有主動取消請求的方式// 這里使用 isAbort 來標識let isAbort = false;// 定時器標識符let timer = null;// 執行方法的名字,const callbackName = `jsonp${Date.now()}_${Math.random() .toString() .slice(2)}`;// 這里假設已經實現了baseURL和url的拼接方法const fullPath = buildFullPath(config.baseURL, config.url);// 這里假設已經實現了url和參數的拼接方法// 不太一樣的地方在于,jsonp需要額外插入一個自己的回調方法const url = buildURL( fullPath, {...config.params,...{ [config.jsonpCallback || ’callback’]: callbackName }, }, config.paramsSerializer);// 創建一個script標簽let script = document.createElement(’script’);// 成功執行操作后function remove() { if (script) {script.onload = script.onerror = null;// 移除script標簽if (script.parentNode) { script.parentNode.removeChild(script);}// 取消定時器if (timer) { clearTimeout(timer);}script = null; }}// 成功請求后window[callbackName] = (data) => { // 若已需要請求,則不再執行 if (isAbort) {return; } // 返回的格式 const response = {status: 200,statusText: ’ok’,config,request: script,data: data, }; remove(); // 實際上這里上一個settle操作,會額外判斷是否是合理的status狀態 // 若我們在config.validateStatus中設置404是合理的,也會進入到resolve狀態 // 但我們這里就不實現這個了 // settle(resolve, reject, response); resolve(response);};// 請求失敗script.onerror = function (error) { remove(); reject(createError(’Network Error’, config, 404));};// 若設置了超時時間if (config.timeout) { timer = setTimeout(function () {remove();// 取消當前操作isAbort = true;reject( createError(’timeout of ’ + config.timeout + ’ms exceeded’,config,405 )); }, config.timeout);}// 若定義了取消操作if (config.cancelToken) { config.cancelToken.promise.then(function () {if (!script) { return;}remove();isAbort = true;reject(createError(’Cancel Error’, config, 404)); });}script.src = url;const target = document.getElementsByTagName(’script’)[0] || document.head;target.parentNode && target.parentNode.insertBefore(script, target); });};export default jsonpAdapter;3. 將適配器添加到 axios 中

axios 的 config 提供了 adapter 字段讓我們插入自己的適配器。使用自定義適配器又有兩種情況:

1.完全只使用自定義的適配器;

2.在某種情況下使用自定義適配器,其他情況時還是使用 axios 自己的適配器。

第 1 種情況還好,只需要 return 自己適配器返回的結果結果即可;而第 2 種情況中,則有個小坑需要踩一下,我們這里也只講解下第 2 種情況。我要把剛才實現的 jsonp 適配器添加到 axios 中,并且只在參數有format=jsonp時才調用該適配器,其他還是用的 axios 提供的適配器。

import Axios from ’axios’;import jsonpAdapter from ’./jsonpAdater’;const request = Axios.create({ adapter: (config) => {if (config?.params?.format === ’jsonp’) { return jsonpAdapter(config);}// 這里需要將config.adapter設置為空// 否則會造成無限循環return defaultAxios({ ...config, ...{ adapter: undefined } }); },});

使用自定義的適配器 jsonp 發起請求。

// 使用自定義的適配器jsonp發起請求var options = { params: {format: ’jsonp’, },};request( ’https://api.prize.qq.com/v1/newsapp/answer/share/oneQ?qID=506336’, options) .then(function (response) {console.log(’jsonp response’, response); }) .catch(function (error) {console.error(’jsonp error’, error); });

使用 axios 默認的適配器發起請求。

// 使用axios默認的適配器發起請求request(’https://api.prize.qq.com/v1/newsapp/answer/share/oneQ?qID=506336’) .then(function (response) {console.log(’axios response’, response); }) .catch(function (error) {console.error(’axios error’, error); });4. 總結

這里,我們就已經實現了一個自定義適配器了,在滿足一定條件時可以觸發這個適配器。通過這個思路,我們也可以實現一個自定義的 mock 方法,例如當參數中包含format=mock時則調用 mock 接口,否則就正常請求。

以上就是如何實現axios的自定義適配器adapter的詳細內容,更多關于axios自定義適配器adapter的資料請關注好吧啦網其它相關文章!

標簽: IOS
相關文章:
主站蜘蛛池模板: 狠狠色狠狠色合久久伊人 | 中文字幕第二页 | 91aiai| av网站推荐 | 久久久精彩视频 | 欧美激情在线观看 | 国产91福利视频 | 污色视频在线观看 | www日韩| 亚洲成人av电影 | 免费黄色小片 | 九色影院 | 日本成人高清视频 | 久草视频免费看 | 日韩成人影院 | 欧美激情在线精品一区二区三区 | 亚洲精品成人 | 午夜免费福利视频 | 国产91在线 | 亚洲 | 久久中文字幕一区二区三区 | av女人的天堂 | 一本一道久久a久久精品综合 | 国产在线小视频 | av中文字幕在线观看 | 亚洲精品免费在线观看 | 久久精品亚洲欧美日韩精品中文字幕 | 国产精品二区三区 | 亚洲国产中文字幕 | 精品二区 | 天天操天天碰 | 国产精品精品视频一区二区三区 | 成人亚洲区 | 成人免费毛片aaaaaa片 | 成人福利在线 | 精品久久久久久久久久久久久久 | 久久久久香蕉视频 | 日韩欧美国产网站 | 欧美一级视频 | 亚洲欧美视频 | 国产在线一区二区三区 | 欧美极品一区二区 | 在线观看污片 | 国产精品久久7777 | 久久亚洲一区 | 国产精品久久久久久久福利院 | 一区二区三区国产视频 | 国产嫩草91 | 免费欧美一级 | 亚洲在线 | 99精品一区 | 天堂欧美城网站网址 | 国产精品久久av | 国产精品成人国产乱一区 | 激情小说综合网 | 日韩一区二区在线观看 | 蜜桃视频在线观看www社区 | 亚洲永久免费观看 | 中午字幕在线观看 | av黄色在线免费观看 | 亚洲精品色 | 成人亚洲 | 成人一区二区在线 | 四虎影视网址 | 欧美国产伦久久久久久 | 操久在线 | 国产视频中文字幕 | 亚洲视频在线观看 | 成人看片在线观看 | 久久久91精品国产一区二区三区 | 午夜午夜精品一区二区三区文 | 国产视频第一页 | 一区二区三区回区在观看免费视频 | 黄色国产 | 91精品国产99久久久久久红楼 | 日韩中文字幕一区二区 | 狠狠色综合久久丁香婷婷 | 国产成人精品综合 | www国产亚洲精品久久网站 | 岛国伊人 | a免费观看| 日韩精品小视频 | 日韩欧美国产精品一区二区三区 | 国产成人精品一区二区三区四区 | 国产视频一区二区 | 精品日韩一区二区三区 | 久久久91精品国产一区二区 | 特黄一级 | 一级全黄少妇性色生活片毛片 | 亚洲在线 | 一区二区三区免费在线观看 | 欧美高清成人 | 久久久久久久久久久久91 | 精品一区二区6 | 综合激情久久 | 成人午夜在线 | 毛片链接 | 日日夜夜狠狠 | 四虎久久| www.欧美亚洲| 国产黄色在线观看 | 男人天堂视频网 | 北条麻妃99精品青青久久主播 | 99久久国产| 日韩中文字幕无码一区二区三区 | 97精品国产 | 四虎影院网 | 男女午夜网站 | 蜜桃视频麻豆女神沈芯语免费观看 | 欧美日本国产欧美日本韩国99 | 亚州av在线| 亚洲日本欧美 | 99视频网站 | 精品久久久久久久久久久久 | 国产精品久久久久久久久 | 国产精品1区| 中文字幕在线免费 | 天天爽夜夜爽 | 久久精品国产亚洲一区二区三区 | 在线日韩| 成人看片在线观看 | 国产成人精品一区二区在线 | 欧美成人精品一区二区男人看 | 久久久久中文字幕 | 噜噜噜噜狠狠狠7777视频 | 成人欧美| 欧美一区二区三区精品 | julia中文字幕久久一区二区 | 中文字幕一区二区三 | 亚洲精品一区在线观看 | 91精品国产综合久久久久久丝袜 | 2019天天干夜夜操 | 久久久久久亚洲精品 | 国产美女视频一区 | 成人精品在线视频 | 国产精品日日 | 天堂男人在线 | 成人在线h | 一本一道久久a久久精品综合蜜臀 | 亚洲精品久久久久久久久 | 国产成人精品无人区一区 | 亚洲免费人成在线视频观看 | 一级毛片在线播放 | 久久之精品 | 精品欧美乱码久久久久久1区2区 | 日韩性网站 | 狠狠艹 | 成人免费视频观看 | 欧美五月| 国产毛片毛片 | 成人午夜在线 | 国产精品二区三区 | 操操操夜夜操 | 中文字幕综合 | 超碰最新在线 | 免费成人在线网站 | 在线色网 | 91精品一区二区 | 在线亚洲免费 | 欧美在线观看一区 | 国产精品久久精品 | 在线不卡一区 | 激情综合久久 | av免费网站在线观看 | 日韩一区二区在线观看视频 | 欧美在线亚洲 | 国产激情一区二区三区 | 91成人精品 | 亚洲成人网一区 | 日日久 | 欧洲精品在线视频 | 欧美国产日韩一区二区 | 一区二区三区av | 亚洲精品久久久一区二区三区 | 欧产日产国产一区 | 国产成人精品综合 | 亚洲三区在线观看 | 黄色在线免费观看 | 国产精品99久久免费观看 | 久久精选视频 | 久久久久久久成人 | 久久久99精品免费观看 | 日韩国产欧美一区 | 一级黄色片看看 | 久久九九国产精品 | 国产乱码精品一区二区三区忘忧草 | 日韩在线国产精品 | 欧美video | 久久中文网 | 欧美一区二区免费在线 | 亚洲成人中文字幕 | 免费的一级视频 | 国产精品a久久久久 | 嫩草网址| 动漫泳衣美女 | 久草网在线视频 | 一区二区三区国产精品 | 国产美女视频一区 | www.欧美亚洲 | 日本一区不卡 | 久久涩 | 精品久久久蜜桃 | 亚洲大片免费观看 | 99精品99| 91天堂| 久久这里只有精品首页 | 日韩精品一区二区在线观看 | 国产亚洲欧美一区二区 | 男人久久天堂 | 美女国产网站 | 精品一区免费 | 久久国产精品久久 | 天天射欧美| 成人综合社区 | 精品99视频 | 久久亚洲一区二区三区四区 | 伊人电影综合网 | 国产精品久久久久久久久久 | 亚洲免费在线观看 | 三区免费视频 | 午夜tv免费观看 | 在线观看成人小视频 | 国产99页 | 中文字幕亚洲精品 | 91亚洲国产精品 | 999久久国产 | 成人午夜影院 | 男人的天堂视频网站 | 亚洲免费一区 | 国产精品入口久久 | 亚洲精品国产一区 | 久久国产精品视频一区 | 久久久久久av | 在线观看中文 | 在线影院av | 日韩精品在线观看一区 | 黑色丝袜脚足j国产在线看68 | 国产精品久久久久久久久久久久冷 | 欧美天堂在线观看 | 欧美日韩电影一区 | 狠久久| 玖色视频| 99爱免费观看国语 | 黄色影片网址 | 午夜男人的天堂 | 亚洲 欧美 激情 另类 校园 | 九九热在线免费视频 | 精品网站999www| 日韩一级大片 | 免费在线精品视频 | 久久天堂 | 成人欧美一区二区三区视频xxx | 亚洲成人免费av | 欧美视频精品 | 中文字幕免费在线 | 综合久久综合 | 性欧美久久久 | 日韩精品免费在线视频 | 欧美成人精品一区二区三区 | 日韩成人在线观看 | 日韩中文在线 | 精品久久久久一区二区三区 | 欧美日韩亚洲综合 | 亚洲视频综合 | 久久久久久国产精品美女 | 亚洲日韩欧美一区二区在线 | 一区二区日本 | 国产欧美精品在线 | 男女视频网站 | 精品一区二区三区久久 | 久久99精品国产91久久来源 | 日韩av在线中文字幕 | 国产精品婷婷午夜在线观看 | 亚洲一区中文字幕 | 久久y| 一区二区成人网 | 毛片一区二区 | 国产精品日韩在线观看 | 99精品视频在线免费观看 | 黄色一级大片视频 | 精品成人av | 99r在线| 亚洲欧美日韩在线 | 国产日韩欧美视频 | 午夜欧美一区二区三区在线播放 | 久久九九这里只有精品 | 一区视频 | 欧美日本国产一区 | 特级毛片在线大全免费播放 | 一区三区在线观看 | 午夜影院黄色 | 久久久久亚洲精品 | 亚洲一区二区日韩 | 成人在线免费视频观看 | 91精品国产91久久久久久最新 | 草草影院ccyycom | 久久久久久久久久久九 | 欧美成人二区 | 欧美精品一区二 | 一区二区精品在线 | 亚洲精品久久久一区二区三区 | 亚洲精品国产综合 | 中文字幕综合 | 在线观看国精产品二区1819 | 亚洲精品国产setv | 国产精品久久国产精品 | 日韩视频一区二区三区 | 亚洲狠狠爱一区二区三区 | 午夜精品亚洲日日做天天做 | 久久精品无码一区二区日韩av | av手机在线播放 | 国产精品人人做人人爽 | 亚洲色图第八页 | 亚洲欧美日韩精品久久亚洲区 | 99精品视频免费在线观看 | 中文字幕在线观看 | 蜜桃comaaa | 亚洲性人人天天夜夜摸 | 国产精品69久久久久水密桃 | 国产成人在线视频 | 久久精品久久久久久 | 午夜精品久久久久久久 | av国产精品 | 亚洲av毛片 | 欧美精产国品一二三区 | 一区免费在线观看 | 91在线观 | 一区二区三区的视频 | 国产精品99精品久久免费 | 自拍视频网 | 黄色国产大片 | 亚洲一级视频在线 | 中文字幕在线观看 | 精品亚洲一区二区三区 | 亚洲一区二区免费看 | 国产一二三四在线 | 欧美卡一卡二 | 国产成人一级片 | 欧美精品久久久久久久久老牛影院 | 久久久婷 | 91色爱 | 国产精品成人国产乱一区 | www.天天草 | 亚洲精品一区二三区不卡 | 北条麻妃一区二区三区在线观看 | 欧美精品一区二区在线观看 | 在线免费观看黄 | 一区二区三区在线 | 精品亚洲一区二区三区 | 亚洲精品久久久久久久久久久 | 一级大片一级一大片 | 高清av网址 | 国产中文视频 | 久久久av | 91天堂在线观看 | 色吧久久 | 日本成人久久 | www.成人| 精品美女在线观看视频在线观看 | 精品日韩欧美一区二区三区在线播放 | 一区二区三区中文字幕 | 精品国产乱码久久久久久蜜柚 | 亚洲福利av | 国产黄色在线观看 | 日韩成人精品 | 欧美日韩一区免费 | 伊人在线| 久久精品一区二区三区中文字幕 | 成人国产一区二区 | 亚洲国产精品一区 | 91天堂 | 91视频免费观看 | 久久久久久久久久久久福利 | 国产视频久久 | 国产欧美综合一区二区三区 | 91精品国产色综合久久 | 精品一区二区三区久久 | 伊人网站| 超碰97人人人人人蜜桃 | 日韩中文一区二区三区 | 午夜精品一区二区三区在线视频 | aaa在线观看 | 国产亚洲精品精品国产亚洲综合 | 欧美日韩亚洲视频 | 色婷婷在线视频观看 | 一级视频网站 | 81精品国产乱码久久久久久 | 日本久久网 | 一区二区在线免费观看 | 日本不卡一区二区 | 欧美在线观看免费观看视频 | 天堂一区 | 欧美成人影院在线 | 午夜免费观看视频 | 午夜影院免费观看 | 91在线精品一区二区 | 黄色av网站在线观看 | 黄色片免费在线 | 日韩视频在线观看一区 | 国产精品视频免费观看 | 日韩av手机在线免费观看 | 亚洲另类视频 | 久久国产综合 | 美女在线视频一区二区 | 中文字幕av一区 | 欧美精品一区二区三区一线天视频 | 成人精品视频99在线观看免费 | 黄色在线观看 | 国产精品成人国产乱一区 | 国产精品一二三四区 | 国产精品久久久久一区二区三区 | 亚洲日本乱码一区两区在线观看 | 亚洲成av人片在线观看 | 国产精品一区在线看 | 日韩欧美一区二区三区久久婷婷 | 日日干夜夜操 | 凹凸日日摸日日碰夜夜 | 亚洲欧美精品 | 日韩精品一二三区 | 成人毛片在线观看视频 | 亚洲精品一二区 | 精品国产视频 | 三级黄色视频毛片 | 日韩精品视频在线播放 | 三级av网站 | 91精品视频在线播放 | a级网站在线观看 | 国产一区二区三区四区三区 | 亚洲精品成人av | 成人av网站在线 | 99热精品国产 | 亚洲精选久久久 | 国产亚洲欧美一区二区三区 | 国产精品美女久久久久久久网站 | 国产在线综合视频 | 日韩精品一区二区三区中文在线 | 国产精品国产精品国产专区不蜜 | 国产有码 | 自拍偷拍一区二区三区 | 日韩综合一区二区 | 欧美a级成人淫片免费看 | www.色.com| 一区二区三区高清 | 久热精品视频 | 一区视频网站 | 久久久一区二区 | 久久国产精品免费一区二区三区 | 2018自拍偷拍 | 国产精品成人国产乱一区 | 999久久久国产精品 免费视频一区 | 欧美日韩久久久 | 亚洲免费在线观看 | 二区影院 | 久久99久久98精品免观看软件 | 成人免费毛片嘿嘿连载视频 | 亚洲一区二区三区四区 | 精品国产一区二区三区日日嗨 | 欧美日韩一区二区视频在线观看 | 99精品欧美一区二区三区 | 国产精品成人3p一区二区三区 | 四虎成人在线播放 | 精品一区二区三区在线视频 | 国产 日韩 欧美 中文 在线播放 | 久久一 | 视频一区二区中文字幕 | 国产精品午夜在线观看 | 亚洲人免费视频 | 午夜午夜精品一区二区三区文 | 国产日韩欧美激情 | 久久久精选 | 伊人超碰 | 日韩视频在线观看一区 | 日韩精品专区在线影院重磅 | 国产最新精品视频 | 第一福利丝瓜av导航 | 亚洲一区二区三区 | 久久久网 | 久久一区| 在线观看亚洲大片短视频 | 国内精品视频一区 | 中文字幕国产视频 | 免费观看一级特黄欧美大片 | 久久伊人久久 | 欧美一级黄视频 | 爱爱视频免费 | 色吧欧美 | 国产精品18久久久 | 狠狠躁夜夜躁人人爽天天高潮 | www久久精品 | 91麻豆产精品久久久久久 | 999精品网 | 久久网页| 国产精品27页 | 国产91精选 | 日韩av免费在线观看 | 成人中文视频 | a级毛片免费高清视频 | 黄色av网站免费 | 国产一区二区三区久久久久久久久 | 亚洲精品国产9999久久久久 | 一区二区三区免费看 | 综合色婷婷一区二区亚洲欧美国产 | av日韩在线看 | 欧美成年人视频 | 亚洲第一黄 | 欧美亚洲三级 | av一区二区在线观看 | 欧美一区二区三区 | 欧美日韩国产在线观看 | 六月综合激情 | 北条麻妃一区二区三区在线 | 精品国产一区二区三区日日嗨 | 91精品一区二区 | 亚洲视频在线观看免费 | 直接看av的网站 | 亚洲天堂中文字幕 | 嫩草影院在线观看91麻豆 | 日韩a视频| 亚洲一区综合 | 国产精产国品一二三产区视频 | 午夜激情在线观看 | 另类国产ts人妖高潮系列视频 | 国产一级中文字幕 | 久久精品国产精品 | 91久久精品一区二区二区 | 午夜播影院 | 成人免费视频网 | 在线观看a视频 | 亚洲一级在线 | 国产精品一区二 | 久久久片 | 国产精品日日做人人爱 | 午夜免费电影 | 一级日韩电影 | 成人免费在线视频观看 | 国产中文字幕一区 | 91精品国产91久久综合桃花 | 国产剧情一区二区 | 伊人网综合视频 | 亚洲精品成人久久久 | 欧美精品一区二区三区在线四季 | 久久99国产精品久久99大师 | 久久麻豆 | 精品一区视频 | 综合精品久久久 | 欧美精品一区二区三区一线天视频 | 日韩av在线一区二区三区 | 国产成人午夜精品影院游乐网 | 亚洲国产欧美91 | 亚洲精品女人久久 | 小情侣高清国产在线播放 | 久久精品国产亚洲一区二区三区 | 北条麻妃99精品青青久久 | 欧美在线一区二区三区 | 精品九九九 | 在线中文字幕av | 亚洲成人av一区二区三区 | 欧洲毛片 | 久久99国产精品久久99果冻传媒 | 日日夜夜免费精品视频 | 精品人成 | 日韩精品在线播放 | 久久综合一区二区 | 欧美一区二区三区视频 | 国产亚洲精品久久久久动 | 免费视频久久 | 亚洲视频1区 | 激情欧美一区 | 亚洲第一天堂 | 91精品视频在线播放 | 国产精品99久久免费观看 | 国产欧美日韩综合精品一区二区 | 亚洲人成在线播放 | 国产精品xxxx | 成人一区av | 四色成人av永久网址 | 台湾av在线 | 欧美精品一区久久 | 免费日本视频 | bxbx成人精品一区二区三区 | 偷拍自拍第一页 | 成人免费观看男女羞羞视频 | 国产精品免费观看 | 日本精品在线播放 | 久久国产欧美日韩精品 | 久久亚洲国产精品 | 视频在线一区 | 99久久免费精品国产男女性高好 | 狠狠躁夜夜躁人人爽天天高潮 | 午夜窝窝| 日本精品一区二区三区在线观看 | 久久免费精品 | 国产精品毛片一区二区三区 | 精品日韩欧美一区二区三区 | 国产噜噜噜噜噜久久久久久久久 | 九一精品国产 | 国产一区二区免费 | 亚洲精品一区在线观看 | 国产一区精品视频 | 日本精品免费 | 日韩成人在线网站 | 亚洲一区二区三区在线 | 久久精品欧美一区二区三区麻豆 | 亚洲精品视频在线播放 | 久久99国产精品久久99大师 | 欧美成人专区 | 久久精品国产99久久久 | 亚洲美女视频 | 久草综合在线 | 亚洲精品二区三区 | 九九免费观看全部免费视频 | 午夜视频在线播放 | 久久精品成人 | 国产精品久久久久久久久岛 | 来个毛片 | 日韩在线播放欧美字幕 |