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

React:我們即將和后端 API 告別?

開發 新聞
Server Components 到底是什么?他會像當年的 Hooks 一樣對整個 React 生態帶來巨大的影響么?

2020 年底,React 公布了一個全新的特性:Server Components,當時它還處于調研和試驗階段,并沒有正式發布,隨著 React 18.0 版本的正式發布,Server Component 的腳步聲也越來越近了,不出意外的話,應該會在今年的某個 React 18 的 minor 版本中正式發布。

Server Components 聽起來好像并不那么激動人心,React 18 所發布的各種特性也似乎平平無奇,自從 Hooks 面世已經三年多過去了,React 似乎停滯了前進的腳步,只是在現有的基礎上做些小修小補?

No。

Concurrent rendering(React 18 新帶來的特性)是一種本質上的改變,它本身不像 Hooks 那樣對開發體驗有著近乎翻天覆地的變革,但是這種底層渲染能力/機制的調整,會帶來非常非常多的可能性,例如:Suspense、OffScreen、Server Components

這三種特性,目前都沒有生產可用,但是等到未來他們正式發布并漸漸被大面積使用時,每一項特性都會帶來非常顯著的開發體驗的提升。而如果讓我從這些未來會出現的新特性中選一個最期待的,那毫不疑問會是 Server Component。

所以,Server Components 到底是什么?他會像當年的 Hooks 一樣對整個 React 生態帶來巨大的影響么?在我們回答這些問題之前,很有必要先解釋一下 Server Components 是什么,又解決了什么問題。

注:下文中的很多內容受 Dan 和 Lauren 的這份 演講視頻 [1] 所啟發,如果你想更深入的了解即將到來的 React Server Component,那么非常推薦這段視頻 事實上,這篇文章并不是一份對 Server Components 的用法教學,也不會涵蓋 Server Components 的每一處細節(甚至為了方便表述會有意地略過一些細節),因此, 在讀下文之前,最好是對 Server Components 已經有所了解

背景:前后端分離

“前后端分離”是當下主流的 web 研發模式,后端存儲數據,并把對數據的操作(增刪改查)封裝成接口,通過后端服務提供給前端,前端應用發送請求(例如 http 請求或者 rpc 請求)去調用后端提供的接口,從而獲取到數據或者是對數據進行修改。

這可能是十幾年以來非常普遍的研發模式了,也因此,我們被區分成前端開發和后端開發,各自負責著“楚河漢界”的一側。我們在各自那一側都做了非常多的優化、創新、突破,在后端,我們有容器化、微服務、SSR,在前端,我們有 code spliting、前端路由、React Hooks。

但是對于 API 層,我們似乎這么多年以來都未曾有過關注,即便是有,也僅僅是停留于 API 傳輸性能(例如 grpc)、API 的存在形式(例如 Restful 和 GraphQL)、API 的工程化管理(例如 Postman)。

并非是想說 API 一個邪惡而糟糕的設計,但是自從 Restful 的概念被提出以來,已經 22 年過去了,我們是不是應該在現在重新思考一下:

以網絡請求作為前后端的分界是最優解嗎?

如果沒有 API,我們該如何架構和開發 Web 應用?

癥結所在

讓我們再回到剛剛的那張圖,考慮一下 API 在帶來職責分工明晰之外,同時也帶來了哪些問題。

請求瀑布流(Waterfall)

就像 Remix [2] 首頁上所展示的,基于 API 和嵌套路由的前端站點,在請求時會出現瀑布流的現象:

數據的之間可能是有前后的依賴關系,抑或是和組件強耦合在一起,需要等待組件的 bundle 加載完成之后才能發出請求,這些都導致了請求瀑布流現象的出現。

并發請求

后端希望實現小而美的接口,每個接口有獨立的職責,例如:

  • getUser 獲取用戶信息
  • getSongs?page=12 獲取歌曲列表
  • getNotifactions 獲取通知列表
  • getFavoirateSongs 獲取收藏的歌曲
  • getNewSongs 獲取新發布的歌曲
  • getRecommendSong 獲取今日推薦的歌曲及對應的文案
  • getSearchBarHotKeywords 獲取熱門的搜索詞
  • getAdBanner 獲取廣告 banner 內容
  • getRecentSongs 獲取最近聽歌記錄
  • getRecommendedPlayList 獲取推薦的歌單列表
  • ……(實在太多了)

每一個接口,單獨拿出來看都是合理的,但是放在一起,就會發現用戶每次打開這樣一個音樂 web app,都要發送至少十幾個接口,對于一些稍微復雜一點的網頁,首次加載就需要請求幾十個接口也絲毫不奇怪。

每一個接口的請求,都會帶來網絡開銷,甚至在有些環境下會有最大并發請求數量的限制(例如在支付寶客戶端那的 rpc 請求),或許網絡層的 automatic batching 可以解決這個問題,但是遺憾的是,在目前的技術體系內,這個問題并不好解決(這里沒有寫不能解決,是因為的確有一些可行的方案,例如 BFF、依賴網關來做接口聚合,但它們都引入的新的問題)。

前端包體積(Bundle size)

包體積已經是“現代”前端開發領域飽受詬病的一點了,動輒幾百 k 的 js 文件,似乎已經背離了瀏覽器是用來“瀏覽”網頁的初衷了。并不是說我們都要做一個瀏覽器原教旨主義者,但是如果網頁能夠在不損失用戶體驗和開發體驗的前提下,恢復到非常輕量和快速的狀態,難道不是一件好事么?

協作成本(溝通、邏輯感知和封閉)

在我個人看來,這是大型項目或需要長期維護的應用中最令人頭疼的問題了。

假設我們現在有一個非常巨大的應用,需要有十幾位開發者共同編寫和維護,那如何分工?答案必然是先做模塊化,我們把整個應用拆分成幾個彼此盡量獨立的模塊,再由每個人或每幾個人負責其中的一個模塊。

模塊化帶來的好處是邊界清晰(看到一個需求就能判斷出來涉及到哪個或哪些模塊做哪些改動)、職責明確(每個人都有自己確定的職責)、減少溝通成本(由于模塊內部的邏輯是封閉的,不需要外部感知,所以可以降低溝通成本)。

對于前兩點,目前的前后端分離架構都還是及格的,但對于第三點,我覺得基于網絡請求接口的協作模式,在很多情況下并沒有有效地做到邏輯內部封閉、減少需要前后端之間來回溝通的信息量。

舉個例子,對于這樣的一個頁面:

看起來非常簡單,一些信息的展示,加上一個充值按鈕,這就是我最開始所設想的。

然而,隨著這個項目不斷的推進,我發現,原本以為是純靜態的標題文案,實際上是需要后端控制的,根據當前用戶的所屬人群來動態判斷文案內容;我發現,由于前端金額計算的可靠性問題,折扣和實際支付相關的內容都是需要在后端預處理之后展示在前端的;

我發現,倒計時的參考時間是需要依靠后端返回的;我發現,按鈕的文案、點擊行為,是需要后端控制的,特別是按鈕的點擊行為,最終方案是后端返回一個枚舉,前端根據這個值來 switch case 一下走不同的邏輯(例如下單、引導先進行注冊和綁卡)……

為了閱讀體驗,我只是列舉了其中隨手想到的一小部分,如果總結一下,那就是,后端和前端并沒有因為“前后端分離”而做到解藕,反倒是藕斷絲連,剪不斷理還亂。后端感知了過多的前端視圖層邏輯,就像是發明了一套 DSL(Domain Specific Language),而前端則是要寫一個針對這套 DSL 的解析器和渲染器。

回到我們剛剛提到的,模塊化帶來的好處。模塊化能夠降低溝通成本,有一個不可忽略前提,就是架構的合理性。模塊化并非是降低溝通成本的本質原因,也并非所有的模塊化實踐都能帶來溝通成本的降低。當前后端分離的實踐成為一個僵硬的、死板的“規范”,那它還能真正起到多少降低溝通成本的作用?一個大大的問號。

Server Components

再次申明一下,下文是假設讀者朋友已經對 Server Components [3] 有所了解

基于網絡請求的 API 模型,有一個大大的前提假設,就是前端應用和后端應用是兩個獨立的應用,但是為什么一定要是這樣?

或許我們可以讓后端應用直接渲染 HTML,用戶操作時,重新渲染一遍頁面?這其實就是在 Restful 時代之前的架構,有很多弊端,特別是可交互性差,不然也就不會出現后來 Restful 的盛行了。

那再或許,我們可以讓前端的 React 組件,運行在后端?

這就是 React Server Components。

一圖勝千言,在現在的前后端分離模式下,后端提供接口,前端的 React 組件調用接口。

而如果后端可以運行 React 組件,直接渲染 React 節點樹到前端,就不需要所謂的 API 的概念了。

后端運行 React 組件并不是什么新鮮事,我們在 SSR(Server Side Rending)早就習以為常了,但是需要特別注明的一點是,在 SSR 中,后端是運行了 React 組件,生成了一份初始狀態的 html,但這份 html 是沒有可交互性的,它只是為了讓用戶能盡早看到頁面而做的一種改良式的、修修補補一樣的優化。

而 Server Components 所帶來的,是我們可以把同一個項目中,一部分的組件作為 Server Components,另一部分組件,作為 Client Components,因此我們可以既享受到后端內部調用帶來的便捷、可維護性,又能保證頁面的可交互性幾乎沒有任何妥協。

如果你用過 PHP 或 Django,那你肯定非常熟悉這種模式:后端直接渲染 html 內容,瀏覽器只負責顯示,用戶點擊按鈕,那就重新請求、重新渲染頁面,如果頁面上需要一些復雜的動態交互,比如讓用戶可以把一個列表展開/收起,或者是點擊某個按鈕之后展示一個模態框,那可以借助于 jQuery 來實現。

PHP + bootstrap + jQuery,現在,Server Components 就像是這套范式的升級版,可以被稱為一種全新的“全棧”開發模式。

因為是在后端環境下,這些 Server Components 可以使用全部的后端能力,不管是中間件,還是其他后端微服務的調用,甚至是 db 的訪問(當然可以直接跑 SQL,但是更好的實踐是通過一個數據中間層),都可以實現。這樣一來,我們就可以直接把數據從源頭獲取,放到 React 組件的上下文中,那自然就不需要傳統意義上的 API 了。

更準確的說,API 并未消失,我們其實也不會和 API 就此說再見,而是讓它換了一種形式。有模塊化的地方,就會有 API,Restful 的 http 網絡請求固然是 API,但中間件暴露出來的方法,瀏覽器提供的 Date 對象,node 提供的文件讀取函數,db 提供的 SQL,這些全都是 API。

在這種新架構下,API 變成了后端里業務應用和上游服務之間的調用,變成了 Server Components 和 Client Components 之間的 props 傳遞,前者讓 API 變得更加干凈、更符合單一職責的原則,而后者讓 API 變得自然到你幾乎感知不到。

所以:

  • Server Components 允許我們不再按照 前端 - 后端 進行模塊的拆分,而是依照 業務應用 - 底層服務 來進行更合理的模塊拆分。從而可以理論上降低模塊之間的溝通成本(因為目前還沒有辦法實踐證明)。
  • 由于 Server Components 是在后端運行組件,直接通過網絡傳輸給前端進行渲染,因此很多大體積的包(例如 markdown 渲染、html sanitize)都不需要在前端下載和運行,從而很大程度上降低包體積。
  • 由于底層 db 或上游服務的調用都是發生在后端內部的,因此即便出現并發請求,所帶來開銷也遠遠小于前端并發調用后端的 Restful API。
  • 同理,請求瀑布流的問題也會因為調用開銷降低而消失或減輕。

想象

如果大膽想象一下的話,未來的研發模式可能這樣的:

開發者將不會再區分前端和后端,而是區分為業務應用開發和上游服務開發。現在的后端開發將(真正地)不再需要關注視圖邏輯,只聚焦于底層業務邏輯,為前端提供清晰好用、原子化的服務/接口;而現在的前端開發將會拓展到橫跨前端和后端(代碼運行環境上),負責的是在后端封裝好的一個個原子化的底層能力上,構建視圖層,而我們也需要一套全新的框架和基礎設施,來適配 Server Components。

目前,Server Components 還沒有正式發布,而即便正式發布之后,也還有長長的工程化落地的路要走,Server Components 增加了很多額外的限制,server、client、shared 的區分也可能會帶來一些理解成本。緩存、性能、server 重新渲染時的增量更新策略、發布時的可灰度性和可回滾性、業務中邊界情況的處理,還有很多的問題需要去解決,還有很多的未知尚未被驗證。

責任編輯:張燕妮 來源: 前端技術磚家
相關推薦

2022-05-09 08:22:09

ReactHooks

2022-03-31 18:59:43

數據庫InnoDBMySQL

2013-07-09 09:14:08

Windows XPOffice 2003

2022-03-08 17:52:58

TCP格式IP

2023-05-29 13:56:00

JSReact

2009-01-04 09:16:11

google Read開發APIGoogle API

2014-02-19 09:35:01

2015-03-19 14:17:48

2024-10-21 00:00:03

JavaScriptDate?API

2021-07-29 07:55:20

React實踐代碼

2025-06-12 08:52:18

WebWorkerJSAPI

2009-02-09 08:55:12

ArcGIS API發布Silverlight

2025-08-29 00:00:05

ViteReact風格

2017-10-11 13:25:00

前端

2015-09-02 09:55:03

云服務MBaaS移動三層架構

2016-08-22 13:31:05

前端架構前后端分離

2015-08-27 09:19:23

移動后端即服務MBaaSPaaS

2022-05-24 08:21:16

數據安全API

2018-10-23 14:24:10

2024-02-22 17:54:30

React編譯器團隊
點贊
收藏

51CTO技術棧公眾號

欧美三级韩国三级日本一级| 91丝袜国产在线播放| 久久精品国产综合| www日本在线观看| 国产福利电影在线播放| 久久久久久久久99精品| 成人久久一区二区| 免费在线观看黄网站| 日韩精品欧美| 亚洲国产欧美一区二区丝袜黑人| 污污视频网站免费观看| 成人黄视频在线观看| 成人av在线影院| 国产精品美女久久久久av超清| 精品国产欧美日韩不卡在线观看| 亚洲动漫精品| 日韩精品在线一区| 国产精品一区二区羞羞答答| 丰满大乳少妇在线观看网站| 中文字幕成人网| 精品一区二区国产| www.色呦呦| 久久国内精品视频| 庆余年2免费日韩剧观看大牛| 日韩在线观看视频一区二区| 欧美限制电影| 精品亚洲一区二区三区在线观看| 亚洲第一国产精品| 9l视频自拍9l视频自拍| 欧美精品少妇| 国产成人在线影院| 成人国产精品一区二区| 高清乱码免费看污| 亚洲国内精品| 欧美黑人一级爽快片淫片高清| 欧美三级视频网站| 伊人春色之综合网| 日韩av在线免费播放| 亚洲免费观看在线| 国内精品视频| 91 com成人网| 亚洲自拍第三页| 欧美高清免费| 欧美日韩午夜在线| 9l视频白拍9色9l视频| 日韩欧美另类一区二区| 疯狂做受xxxx高潮欧美日本 | 激情婷婷综合网| 成年人黄色大片在线| 亚洲一卡二卡三卡四卡| 国产精品三级一区二区| av毛片在线免费看| 一区二区高清免费观看影视大全| 裸体大乳女做爰69| 无遮挡aaaaa大片免费看| 伊人久久在线| 欧美性猛交xxxx富婆| 中文字幕日本最新乱码视频| 免费成人在线电影| 欧美色另类天堂2015| 日韩精品视频一区二区在线观看| 校园春色亚洲| 一本色道a无线码一区v| 色婷婷综合久久久久中文字幕| 黄色综合网址| 欧美色偷偷大香| 国产欧美精品一二三| 国产剧情一区二区在线观看| 欧美一区二区三区人| 日本少妇激三级做爰在线| 精品中文在线| 亚洲成人网在线观看| 午夜av免费看| 欧美色爱综合| 久久天天躁夜夜躁狠狠躁2022| 手机在线免费看片| 亚洲国产免费看| 日韩免费在线播放| 国产精品国产三级国产普通话对白| 国产真实精品久久二三区| 7777精品伊久久久大香线蕉语言 | 一区二区三区视频免费在线观看| 日本乱子伦xxxx| 天堂美国久久| 久久久久久久亚洲精品| 潘金莲一级淫片aaaaaa播放| 久久精品国内一区二区三区| 亚洲在线免费视频| 欧美一级一区二区三区| 国产午夜精品一区二区三区四区| 中国人体摄影一区二区三区| 美女网站视频在线| 欧美性极品xxxx娇小| 91女神在线观看| 爱高潮www亚洲精品| 国产香蕉精品视频一区二区三区| 永久av免费网站| 亚洲作爱视频| 川上优av一区二区线观看| 色呦呦视频在线| 国产精品传媒入口麻豆| 国产精品裸体瑜伽视频| 久久精品黄色| 日韩成人中文字幕在线观看| 天天操天天摸天天舔| 国产欧美一级| 99re视频在线| 天堂中文а√在线| 欧美日韩国产页| 网站在线你懂的| 亚洲理论电影片| 欧美噜噜久久久xxx| 91视频久久久| 99精品在线观看视频| 国产在线拍揄自揄拍无码| 日本免费一区二区三区四区| 精品国产一区a| 免费成人深夜夜行网站| 亚洲综合日韩| 国产精品一区二区在线观看 | 亚洲国产av一区二区| 久久嫩草精品久久久精品一| 狠狠精品干练久久久无码中文字幕| 亚洲日本在线观看视频| 精品呦交小u女在线| 麻豆一区二区三区精品视频| 精品一区二区免费看| 欧美日韩在线精品一区二区三区| 欧美性video| 在线电影院国产精品| 性欧美精品男男| 99在线热播精品免费99热| 亚洲一区二区三区成人在线视频精品| 最新电影电视剧在线观看免费观看| 午夜精彩视频在线观看不卡| 欧美图片自拍偷拍| 亚洲欧美综合| 亚洲a成v人在线观看| av网站在线免费播放| 色婷婷国产精品综合在线观看| 国产一级二级视频| 激情综合自拍| 国产精品乱码| 成人爽a毛片免费啪啪动漫| 日韩久久久精品| 欧美日韩免费做爰视频| 国产麻豆成人精品| 久久国产精品免费观看| 91九色成人| 久久99久久99精品免观看粉嫩| 亚洲专区第一页| 中文字幕中文字幕中文字幕亚洲无线| 在线视频日韩一区| 色一区二区三区四区| 国产精品视频xxx| 在线国产91| 6080yy午夜一二三区久久| 五月综合色婷婷| 国产精品一区三区| 男的插女的下面视频| www国产精品| 91高清免费在线观看| 男女视频在线观看免费| 91黄色免费网站| 色偷偷男人天堂| 国产麻豆视频精品| 欧美亚洲色图视频| 美女av一区| 国产精品美女免费| 成年人黄视频在线观看| 欧美成人一区二区三区片免费 | 一本在线免费视频| 久久精品国产亚洲aⅴ| 免费观看国产视频在线| 一本一道久久a久久| 欧美一级高清免费| 在线观看免费黄色| 日韩免费电影网站| 九九九在线观看| 国产精品久久看| 亚洲熟女一区二区三区| 亚洲一区欧美激情| 中文字幕精品—区二区日日骚| 伊色综合久久之综合久久| 97成人在线视频| 91在线观看| 亚洲国产成人在线视频| www.日韩一区| 亚洲狠狠丁香婷婷综合久久久| 一区二区三区少妇| 精品一区二区免费在线观看| 欧美一区二区中文字幕| 成人看的视频| 国产尤物91| 成人在线视频免费看| 久久久久久久久久久91| 91大神xh98hx在线播放| 精品久久久久久久久久久久久久久| youjizz在线视频| 亚洲啪啪综合av一区二区三区| 国产精品一区二区入口九绯色| 美女网站在线免费欧美精品| www.日本在线播放| 久久视频精品| 久久大片网站| 国产一区二区三区| 国产成人高清激情视频在线观看 | 久久综合桃花网| 国产精品亚洲欧美| 亚洲天堂第一区| 成人在线免费观看视频| 国产一区二区三区四区hd| 九九热这里有精品| 欧美一区二区三区免费视| 国产成人l区| 综合av色偷偷网| 久久久资源网| 亚洲精品大尺度| 国产黄色高清视频| 欧美日韩成人在线| 伊人久久中文字幕| 高跟丝袜一区二区三区| 久久久精品国产sm调教网站| 国产精品美女久久久久久久 | 欧美亚洲日本网站| 青草视频在线免费直播| 日韩视频精品在线| 第一视频专区在线| 亚洲欧洲一区二区三区久久| 日本高清视频网站| 日韩美女主播在线视频一区二区三区| 91在线视频国产| 欧美日韩午夜在线| 最新在线中文字幕| 一本大道久久a久久综合| 亚洲精品男人天堂| 图片区日韩欧美亚洲| 国产大片中文字幕在线观看| 亚洲黄色免费网站| 久久久久亚洲av片无码下载蜜桃 | 在线观看免费av片| 午夜电影网一区| 日本少妇激情舌吻| 亚洲成av人**亚洲成av**| 久久久久人妻一区精品色欧美| 亚洲欧美国产77777| 色偷偷www8888| 亚洲欧洲国产日本综合| 中国美女黄色一级片| 国产精品嫩草99a| 亚洲激情图片网| 亚洲欧美激情插| 久久黄色免费视频| 亚洲a一区二区| 日韩经典在线观看| 欧美丝袜一区二区三区| 一级一片免费看| 欧美日韩黄色一区二区| 一本久道久久综合无码中文| 7799精品视频| 亚洲老妇色熟女老太| 亚洲精品99久久久久中文字幕| 天堂а√在线8种子蜜桃视频| 亚洲乱码国产乱码精品精天堂 | 日韩深夜福利| 欧美日韩精品中文字幕一区二区| 国产成人三级| 中文字幕日韩一区二区三区不卡| 欧美一区免费| 激情伊人五月天| 日韩高清不卡在线| 伊人五月天婷婷| jlzzjlzz亚洲日本少妇| 波多野结衣a v在线| 国产精品久久久久影院亚瑟 | 短视频在线观看| 国产精品免费视频观看| 九九热精彩视频| 日韩人在线观看| 国产精品嫩草影院桃色| 亚洲成色777777女色窝| 粉嫩av在线播放| 欧美情侣性视频| 成人福利av| 成人羞羞国产免费| 欧美中文一区| 亚洲欧洲精品在线| 在线看片一区| jizz18女人| 成人动漫一区二区三区| 人妻精品久久久久中文| 一区二区三区在线视频观看| 好看的av在线| 日韩一级高清毛片| 国产福利免费在线观看| 欧美日韩999| 91亚洲视频| 激情一区二区三区| 亚洲国产老妈| 欧美日韩亚洲一二三| 夫妻av一区二区| 最新黄色av网址| 日本精品一级二级| 日本成人动漫在线观看| 久久精品91久久香蕉加勒比| 一区二区三区短视频| av资源站久久亚洲| 第一会所亚洲原创| 黄www在线观看| 盗摄精品av一区二区三区| 黄色片网站在线播放| 日韩欧美一区二区三区| 性一交一乱一伧老太| 久久久久www| 99re66热这里只有精品4| 韩国成人一区| 午夜精品婷婷| 久久6免费视频| 国产午夜亚洲精品午夜鲁丝片| 久久久精品99| 日韩一级免费观看| 黄色网页在线观看| 国产精品一区二区三区免费视频| 亚洲成人一品| 热99这里只有精品| 大白屁股一区二区视频| 国产精品丝袜一区二区| 欧美日韩视频不卡| wwwxxx在线观看| 日本伊人精品一区二区三区介绍| 黄色欧美在线| 蜜臀精品一区二区| 国产在线麻豆精品观看| 一级二级黄色片| 欧洲精品中文字幕| 国产免费av高清在线| 人人做人人澡人人爽欧美| 五月国产精品| 欧美亚洲另类色图| 91老司机福利 在线| 天天综合网入口| 精品中文字幕久久久久久| 日本蜜桃在线观看视频| 久久婷婷开心| 久久久久欧美精品| 亚洲黄色免费视频| 欧美午夜理伦三级在线观看| 超碰97在线免费观看| 国产精品久久久久久久久久三级| 国产一区二区亚洲| 182午夜在线观看| 亚洲视频网在线直播| 国产福利资源在线| 欧美激情精品久久久久久| 大香伊人久久精品一区二区| 九九爱精品视频| 久久久久久久久久美女| 亚洲av人无码激艳猛片服务器| 怡红院精品视频| 国产不卡精品| 2019日韩中文字幕mv| 91看片淫黄大片一级| 日韩免费av网站| xxav国产精品美女主播| 日韩免费精品| www.中文字幕在线| 国产精品全国免费观看高清| 国产视频第一页| 国内精品中文字幕| 国产精品一区二区av日韩在线| 奇米视频7777| 亚洲综合自拍偷拍| 日本私人网站在线观看| 国产欧美韩国高清| 国内精品福利| 亚洲成人黄色av| 69久久夜色精品国产69蝌蚪网| 国产美女情趣调教h一区二区| 欧美精品尤物在线| 精品无人码麻豆乱码1区2区| 精品午夜福利在线观看| 亚洲人成网站在线播| 成人国产精品一区二区网站| 青青在线免费观看| 国产偷国产偷精品高清尤物| 国产情侣激情自拍| 日本国产欧美一区二区三区| 国产精品久久久久久影院8一贰佰 国产精品久久久久久麻豆一区软件 | 日韩片欧美片| 成人做爰www看视频软件| 欧美午夜精品久久久久久人妖 | 久久久在线视频| 成人影院天天5g天天爽无毒影院| 在线成人精品视频| 色av一区二区| 波多野结衣在线播放| 日韩欧美在线观看强乱免费| 成人sese在线| 国产精品毛片一区视频播| 日本欧美中文字幕|