日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

akka 简介_Akka HTTP路由简介

發布時間:2023/11/29 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 akka 简介_Akka HTTP路由简介 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

akka 簡介

by Miguel Lopez

由Miguel Lopez

Akka HTTP路由簡介 (An introduction to Akka HTTP routing)

Akka HTTP’s routing DSL might seem complicated at first, but once you get the hang of it you’ll see how powerful it is.

Akka HTTP的路由DSL乍一看似乎很復雜,但是一旦掌握了它,您就會發現它的功能強大。

In this tutorial we will focus on creating routes and their structure. We won’t cover parsing to and from JSON, we have other tutorials that cover that topic.

在本教程中,我們將重點介紹創建路線及其結構。 我們將不介紹與JSON之間的解析,也有涉及該主題的其他教程 。

什么是指令? (What are directives?)

One of the first concepts we’ll find when learning server-side Akka HTTP (there’s a client-side library as well) is directives.

當學習服務器端Akka HTTP(也有一個客戶端庫)時,我們會發現第一個概念是指令 。

So, what are they?

那是什么

You can think of them as building blocks, Lego pieces if you will, that you can use to construct your routes. They are composable, which means we can create directives on top of other directives.

您可以將它們視為積木,也可以視作樂高積木,用于構建路線。 它們是可組合的,這意味著我們可以在其他指令之上創建指令。

If you want a more in-depth reading, feel free to check out Akka HTTP’s official documentation.

如果您想更深入地閱讀,請隨時查閱Akka HTTP的官方文檔 。

Before moving on, let’s discuss what we’ll build.

在繼續之前,讓我們討論一下我們將要構建的內容。

類博客API (Blog-like API)

We’ll create a sample of a public facing API for a blog, where we will allow users to:

我們將為博客創建一個面向公眾的API樣本,我們將允許用戶執行以下操作:

  • query a list of tutorials

    查詢教程列表
  • query a single tutorial by ID

    通過ID查詢單個教程
  • query the list of comments in a tutorial

    查詢教程中的評論列表
  • add comments to a tutorial

    在教程中添加評論

The endpoints will be:

端點將是:

- List all tutorials GET /tutorials- Create a tutorial GET /tutorials/:id- Get all comments in a tutorial GET /tutorials/:id/comments- Add a comment to a tutorial POST /tutorials/:id/comments

We will only implement the endpoints, no logic in them. This way we’ll learn how to create this structure and the common pitfalls when starting with Akka HTTP.

我們將只實現端點,而沒有邏輯。 這樣,我們將學習從Akka HTTP開始如何創建此結構以及常見的陷阱。

項目設置 (Project Setup)

We’ve created a repo for this tutorial, in it you’ll find a branch per each section that requires coding. Feel free to clone it and use it as a base project or even just change between branches to look at the differences.

我們已經為本教程創建了一個倉庫 ,其中每個需要編碼的部分都會找到一個分支。 隨意克隆它并將其用作基礎項目,甚至只是在分支之間進行更改以查看差異。

Otherwise, create a new SBT project, and then add the dependencies in the build.sbt file:

否則,請創建一個新的SBT項目,然后在build.sbt文件中添加依賴build.sbt :

name := "akkahttp-routing-dsl"version := "0.1"scalaVersion := "2.12.7"val akkaVersion = "2.5.17" val akkaHttpVersion = "10.1.5"libraryDependencies ++= Seq( "com.typesafe.akka" %% "akka-actor" % akkaVersion, "com.typesafe.akka" %% "akka-testkit" % akkaVersion % Test, "com.typesafe.akka" %% "akka-stream" % akkaVersion, "com.typesafe.akka" %% "akka-stream-testkit" % akkaVersion % Test, "com.typesafe.akka" %% "akka-http" % akkaHttpVersion, "com.typesafe.akka" %% "akka-http-testkit" % akkaHttpVersion % Test, "org.scalatest" %% "scalatest" % "3.0.5" % Test )

We added Akka HTTP and its dependencies, Akka Actor and Streams. And we will also use Scalatest for testing.

我們添加了Akka HTTP及其依賴項,Akka Actor和Streams。 我們還將使用Scalatest進行測試。

列出所有教程 (Listing all the tutorials)

We’ll take a TDD approach to build our directive hierarchy, creating the tests first to make sure when don’t break our routes when adding others. Taking this approach is quite helpful when starting with Akka HTTP.

我們將采用TDD方法來構建指令層次結構,首先創建測試以確保添加其他路由時不中斷我們的路由。 從Akka HTTP開始時,采用這種方法非常有幫助。

Let’s start with our route to listing all the tutorials. Create a new file under src/test/scala (if the folders don't exist, create them) named RouterSpec:

讓我們從列出所有教程的路線開始。 在src/test/scala下創建一個名為RouterSpec的新文件(如果文件夾不存在,請創建它們):

import akka.http.scaladsl.testkit.ScalatestRouteTest import org.scalatest.{Matchers, WordSpec}class RouterSpec extends WordSpec with Matchers with ScalatestRouteTest {}

WordSpec and Matchers are provided by Scalatest, and we'll use them to structure our tests and assertions. ScalatestRouteTest is a trait provided by Akka HTTP's test kit, it will allow us to test our routes in a convenient way. Let's see how we can accomplish that.

WordSpec和Matchers是由Scalatest提供,我們將用它們來構建我們的測試和斷言。 ScalatestRouteTest是Akka HTTP測試工具提供的特征,它將使我們能夠以方便的方式測試路由。 讓我們看看我們如何做到這一點。

Because we’re using Scalatest’s WordSpec, we’ll start by creating a scope for our Router object that we will create soon and the first test:

因為我們使用的是Scalatest的WordSpec ,所以我們將從為我們的Router對象創建一個范圍開始,這將是我們即將創建的第一個測試:

"A Router" should { "list all tutorials" in { } }

Next, we want to make sure can send a GET request to the path /tutorials and get the response we expect, let's see how we can accomplish that:

接下來,我們要確保可以將GET請求發送到路徑/tutorials并獲得我們期望的響應,讓我們看一下如何實現:

Get("/tutorials") ~> Router.route ~> check { status shouldBe StatusCodes.OK responseAs[String] shouldBe "all tutorials" }

It won’t even compile because we haven’t created our Router object. Let's do that now.

它甚至不會編譯,因為我們還沒有創建Router對象。 現在開始吧。

Create a new Scala object under src/main/scala named Router. In it we will create a method that will return a Route:

在src/main/scala下創建一個名為Router的新Scala對象。 在其中,我們將創建一個將返回Route :

import akka.http.scaladsl.server.Routeobject Router {def route: Route = ???}

Don’t worry too much about the ???, it's just a placeholder to avoid compilation errors temporarily. However, if that code is executed, it'll throw a NotImplementedError as we'll see soon.

不用擔心??? ,這只是暫時避免編譯錯誤的占位符。 但是,如果執行了該代碼,它將拋出NotImplementedError ,我們將很快看到。

Now that our tests and project are compiling, let’s run the tests (Right-click the spec and “Run ‘RouterSpec’”).

現在我們的測試和項目正在編譯,讓我們運行測試(右鍵單擊spec并“運行'RouterSpec'”)。

The test failed with the exception we were expecting, we haven’t implemented our routes. Let’s begin!

測試失敗,除了我們所期望的例外,我們還沒有實現我們的路線。 讓我們開始!

創建上市路線 (Creating the listing route)

By looking into the official documentation we see that the route begins with the path directive. Let's mimic what they're doing and build our route:

通過查看官方文檔,我們發現路由以path指令開頭。 讓我們模仿他們在做什么,并建立我們的路線:

import akka.http.scaladsl.server.{Directives, Route}object Router extends Directives {def route: Route = path("tutorials") { get { complete("all tutorials") } }}

Seems reasonable, let’s run our spec. And it passes, great!

似乎合理,讓我們運行我們的規范。 它過去了,太好了!

For reference, our entire RouterSpec now looks like:

作為參考,我們的整個RouterSpec現在看起來像:

import akka.http.scaladsl.model.StatusCodesimport akka.http.scaladsl.testkit.ScalatestRouteTestimport org.scalatest.{Matchers, WordSpec}class RouterSpec extends WordSpec with Matchers with ScalatestRouteTest { "A Router" should { "list all tutorials" in { Get("/tutorials") ~> Router.route ~> check { status shouldBe StatusCodes.OK responseAs[String] shouldBe "all tutorials" } } }}

通過ID獲取單個教程 (Getting a single tutorial by ID)

Next, we will allow our users to retrieve a single tutorial.

接下來,我們將允許我們的用戶檢索單個教程。

Let’s add a test for our new route:

讓我們為新路線添加一個測試:

"return a single tutorial by id" in { Get("/tutorials/hello-world") ~> Router.route ~> check { status shouldBe StatusCodes.OK responseAs[String] shouldBe "tutorial hello-world" }}

We expect to get back a message that includes the tutorial ID.

我們希望獲得一條包含教程ID的消息。

The test will fail because we haven’t created our route, let’s do that now.

由于我們尚未創建路線,因此測試將失敗,讓我們現在開始。

From the same resource we used earlier to base our route on, we can see how we can place multiple directives at the same level in the hierarchy using the ~ directive.

從之前使用的相同資源開始,我們可以看到如何使用~指令將多個指令放置在層次結構中的同一級別上。

We will have to nest path directives because need another segment after the /tutorials route for the tutorial ID. In the documentation they use IntNumber to extract a number from the path, but we'll use a string and for that we use can Segment instead.

我們將必須嵌套path指令,因為在/tutorials路由后需要另一個段來獲取教程ID。 在文檔中,他們使用IntNumber從路徑中提取數字,但是我們將使用字符串,為此,我們可以使用Segment 。

Our route looks like:

我們的路線如下:

def route: Route = path("tutorials") { get { complete("all tutorials") } ~ path(Segment) { id => get { complete(s"tutorial $id") } }}

Let’s run the tests. And you should get a similar error:

讓我們運行測試。 而且您應該得到類似的錯誤:

Request was rejectedScalaTestFailureLocation: RouterSpec at (RouterSpec.scala:17)org.scalatest.exceptions.TestFailedException: Request was rejected

What’s going on?!

這是怎么回事?!

Well, a request is rejected when it doesn’t match our directive hierarchy. This is one of the things that got me when starting.

好吧,當請求與我們的指令層次結構不匹配時,該請求將被拒絕。 這是開始時讓我著迷的事情之一。

Now is probably a good time to look into how these directives match the incoming request as it goes through the hierarchy.

現在可能是研究這些指令如何與傳入請求通過層次結構進行匹配的好時機。

Different directives will match different aspects of an incoming request, we’ve seen path and get, one matches the URL of the request and the other the method. If a request matches a directive it will go inside it, if it doesn't it will continue to the next one. This also tells us that order matters. If it doesn't match any directive the request is rejected.

不同的指令將匹配傳入請求的不同方面,我們已經看到path和get ,一個匹配請求的URL,另一個匹配方法。 如果一個請求與一個指令相匹配,它將進入其中,如果不匹配,它將繼續到下一個指令。 這也告訴我們訂單很重要。 如果它與任何指令都不匹配,則請求被拒絕。

Now that we now that our request is not matching our directives, let’s start looking into why.

現在,我們的請求與指令不匹配,讓我們開始研究原因。

If we look the documentation for the path directive (Cmd + Click on Mac) we'll find:

如果我們查看path指令的文檔(Cmd +在Mac上單擊),我們會發現:

/** * Applies the given [[PathMatcher]] to the remaining unmatched path after consuming a leading slash. * The matcher has to match the remaining path completely. * If matched the value extracted by the [[PathMatcher]] is extracted on the directive level. * * @group path */

So, the path directive has to match exactly the path, meaning our first path directive will only match /tutorials and never /tutorials/:id.

因此, path指令必須與路徑完全匹配,這意味著我們的第一個path指令將僅匹配/tutorials而不會匹配/tutorials/:id 。

In the same PathDirectives trait that contains the path directive we can see another directive named pathPrefix:

在包含path指令的同一PathDirectives特性中,我們可以看到另一個名為pathPrefix指令:

/** * Applies the given [[PathMatcher]] to a prefix of the remaining unmatched path after consuming a leading slash. * The matcher has to match a prefix of the remaining path. * If matched the value extracted by the PathMatcher is extracted on the directive level. * * @group path */

pathPrefix matches only a prefix and removes it. Sounds like this is what we're looking for, let's update our routes:

pathPrefix僅匹配前綴,并將其刪除。 聽起來這就是我們想要的,讓我們更新路線:

def route: Route = pathPrefix("tutorials") { get { complete("all tutorials") } ~ path(Segment) { id => get { complete(s"tutorial $id") } }}

Run the tests, and… we get another error. ?

運行測試,然后…我們得到另一個錯誤。 ?

"[all tutorials]" was not equal to "[tutorial hello-world]"ScalaTestFailureLocation: RouterSpec at (RouterSpec.scala:18)Expected :"[tutorial hello-world]"Actual :"[all tutorials]"

Looks like our request matched the first get directive. It now matches the pathPrefix, and because it also is a GET request it will match the first get directive. Order matters.

看起來我們的請求與第一個get指令匹配。 現在,它與pathPrefix匹配,并且由于它也是一個GET請求,因此它將與第一個get指令匹配。 順序很重要。

There are a couple of things we can do. The simplest solution would be to move the first get request to the end of the hierarchy, however, we would have to remember this or document it. Not ideal.

我們可以做幾件事。 最簡單的解決方案是將第一個get請求移至層次結構的末尾,但是,我們必須記住此要求或將其記錄下來。 不理想。

Personally, I prefer avoiding such solutions and instead make the intend clear through code. If we look in the PathDirectives trait from earlier, we'll find a directive called pathEnd:

就我個人而言,我更喜歡避免此類解決方案,而是通過代碼明確意圖。 如果我們從較早的版本開始查看PathDirectives特性,我們將找到一個名為pathEnd的指令:

/** * Rejects the request if the unmatchedPath of the [[RequestContext]] is non-empty, * or said differently: only passes on the request to its inner route if the request path * has been matched completely. * * @group path */

That’s exactly what we want, so let’s wrap our first get directive with pathEnd:

這正是我們想要的,所以讓我們用pathEnd包裝第一個get指令:

def route: Route = pathPrefix("tutorials") { pathEnd { get { complete("all tutorials") } } ~ path(Segment) { id => get { complete(s"tutorial $id") } }}

Run the tests again, and… finally, the tests are passing! ?

再次運行測試,……最后,測試通過了! ?

列出教程中的所有評論 (Listing all comments in a tutorial)

Let’s put into practice what we learned about nesting routes by taking it a bit further.

讓我們進一步實踐嵌套路由所學到的知識。

First the test:

首先測試:

"list all comments of a given tutorial" in { Get("/tutorials/hello-world/comments") ~> Router.route ~> check { status shouldBe StatusCodes.OK responseAs[String] shouldBe "comments for the hello-world tutorial" }}

It’s a similar case as before: we know we’ll need to place a route next to another one, which means we need to:

這與之前的情況類似:我們知道我們需要在另一條路線旁邊放置一條路線,這意味著我們需要:

  • change the path(Segmenter) to pathPrefix(Segmenter)

    將path(Segmenter)更改為pathPrefix(Segmenter)

  • wrap the first get with the pathEnd directive

    用pathEnd指令包裝第一個get

  • place the new route next to the pathEnd

    將新路線放置在pathEnd

Our routes end up looking like:

我們的路線最終看起來像:

def route: Route = pathPrefix("tutorials") { pathEnd { get { complete("all tutorials") } } ~ pathPrefix(Segment) { id => pathEnd { get { complete(s"tutorial $id") } } ~ path("comments") { get { complete(s"comments for the $id tutorial") } } }}

Run the tests, and they should pass! ?

運行測試,它們應該通過! ?

在教程中添加評論 (Adding comments to a tutorial)

Our last endpoint is similar to the previous, but it will match POST requests. We’ll use this example to see the difference between implementing and testing a GET request versus a POST request.

我們的最后一個端點與先前的端點相似,但是它將匹配POST請求。 我們將使用此示例查看實現和測試GET請求與POST請求之間的區別。

The test:

考試:

"add comments to a tutorial" in { Post("/tutorials/hello-world/comments", "new comment") ~> Router.route ~> check { status shouldBe StatusCodes.OK responseAs[String] shouldBe "added the comment 'new comment' to the hello-world tutorial" }}

We’re using the Post method instead of the Get we've been using, and we're giving it an additional parameter which is the request body. The rest is familiar to us now.

我們使用的是Post方法而不是我們一直使用的Get方法,并且為其提供了一個附加參數,即請求正文。 其余的現在對我們來說已經很熟悉了。

To implement our last route, we can refer to the documentation and look at how it’s usually done.

要實現我們的最后一條路線,我們可以參考文檔并查看它通常是如何完成的。

We have a post directive just as we have a get one. To extract the request body we need two directives, entity and as, to which we supply the type we expect. In our case it's a string.

我們有一個post指令,就像我們有一個get指令。 為了提取請求主體,我們需要兩個指令, entity和as ,我們向它們提供期望的類型。 在我們的例子中,它是一個字符串。

Let’s give that a try:

讓我們嘗試一下:

post { entity(as[String]) { comment => complete(s"added the comment '$comment' to the $id tutorial") }}

Looks reasonable. We extract the request body as a string and use it in our response. Let’s add it to our route method next to the previous route we worked on:

看起來很合理。 我們將請求主體提取為字符串,并在響應中使用它。 讓我們將其添加到我們之前處理過的路由旁邊的route方法中:

def route: Route = pathPrefix("tutorials") { pathEnd { get { complete("all tutorials") } } ~ pathPrefix(Segment) { id => pathEnd { get { complete(s"tutorial $id") } } ~ path("comments") { get { complete(s"comments for the $id tutorial") } ~ post { entity(as[String]) { comment => complete(s"added the comment '$comment' to the $id tutorial") } } } }}

If you’d like to learn how to parse Scala classes to and from JSON we’ve got tutorials for that as well.

如果您想學習如何在JSON中解析Scala類以及從JSON解析出Scala類, 我們也有相應的教程 。

Run the tests, and they should all pass.

運行測試,它們都應該通過。

結論 (Conclusion)

Akka HTTP’s routing DSL might seem confusing at first, but after overcoming some bumps it just clicks. After a while it’ll come naturally and it can be very powerful.

Akka HTTP的路由DSL乍一看似乎令人困惑,但是在克服了一些麻煩之后,只需單擊一下。 一段時間后,它會自然而然地變得強大。

We learned how to structure our routes, but more importantly, we learned how to create that structure guided by tests which will make sure we don’t break them at some point in the future.

我們學會了如何構造路線,但更重要的是,我們學會了如何在測試的指導下建立這種結構,以確保我們在將來的某個時候不會破壞它們。

Even though we only worked on four endpoints, we ended up with a somewhat complicated and deep structure. Stay tuned and we’ll explore different ways to simplify our routes and make them more manageable!

即使我們僅在四個端點上工作,但最終還是有一個復雜而深入的結構。 請繼續關注,我們將探索各種方法來簡化路線并使其更易于管理!

Learn how to build REST APIs with Scala and Akka HTTP with this step-by-step free course!

通過此分步免費課程,了解如何使用Scala和Akka HTTP構建REST API!

Originally published at www.codemunity.io.

最初在www.codemunity.io上發布。

翻譯自: https://www.freecodecamp.org/news/an-introduction-to-akka-http-routing-697b00399cad/

akka 簡介

總結

以上是生活随笔為你收集整理的akka 简介_Akka HTTP路由简介的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

一区二区三区动漫 | 五月天婷婷在线播放 | 亚洲情影院 | 狠狠色伊人亚洲综合成人 | 五月色综合| 免费成人看片 | 日韩理论视频 | 亚洲人人精品 | 国产精品国产自产拍高清av | 97色视频在线 | 成人精品一区二区三区电影免费 | 国产精品白浆视频 | 超碰公开在线 | 久久亚洲人 | 日日干激情五月 | 欧美精品国产综合久久 | 免费日韩电影 | 亚洲国产欧洲综合997久久, | 午夜免费福利片 | 日韩精品中文字幕av | 国产露脸91国语对白 | 九九国产精品视频 | 五月综合色 | 亚洲女欲精品久久久久久久18 | 国产色就色 | 日韩色综合网 | 一区二区三区在线播放 | 久热免费| 日韩狠狠操 | 黄色小网站在线 | 久久国产女人 | 国产精品免费观看国产网曝瓜 | www激情com| 国产一级特黄毛片在线毛片 | 天天色天天射天天操 | 色婷婷免费视频 | 久久久国产精华液 | 国产精品视频内 | .国产精品成人自产拍在线观看6 | 欧洲精品视频一区二区 | 日本 在线 视频 中文 有码 | 国产精品一区二区久久精品 | 免费十分钟 | 91麻豆国产| 久久国产精品99久久久久久丝袜 | 91香蕉亚洲精品 | 国产高清免费视频 | 九九影视理伦片 | 国产系列精品av | 在线视频一区二区 | 五月天伊人网 | 天天射天天干天天操 | 天天综合狠狠精品 | 国产精品久久久久aaaa九色 | 欧美夫妻性生活电影 | 999久久国精品免费观看网站 | 少妇性色午夜淫片aaaze | 99在线热播精品免费99热 | 久久久国产高清 | 国产精品永久免费 | 久久国产精品99久久久久久进口 | 欧美日本高清视频 | 国产精品免费一区二区三区 | 国产精品乱码高清在线看 | 久久夜色网 | 欧美一级久久久 | 91女神的呻吟细腰翘臀美女 | 亚洲美女免费精品视频在线观看 | 久久免费大片 | 日本中文乱码卡一卡二新区 | 久久av福利 | www.在线看片.com | 国产在线97 | 免费观看一区二区 | 日韩精品一区二区三区在线播放 | 免费热情视频 | 日韩在线免费高清视频 | 涩涩网站免费 | 最新av电影网址 | 1024手机看片国产 | 国内精品久久久久影院一蜜桃 | 一级大片在线观看 | 97超碰色 | 99久久爱 | 日韩中字在线 | 久久久久久看片 | 国产亚洲在线 | 在线观看一区二区视频 | 色婷婷色| 国产在线成人 | 日韩在线高清视频 | 干干干操操操 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 国产精品剧情在线亚洲 | 免费网站看v片在线a | 久久久99精品免费观看app | 国产中文字幕在线播放 | 成人一级黄色片 | 日韩三区在线 | 一区二区三区免费在线 | va视频在线观看 | 九九久久久 | av网站手机在线观看 | 亚洲精品美女在线观看播放 | 日韩在线免费高清视频 | 欧美巨大 | 日日夜夜爱 | 欧美成人中文字幕 | 国产资源av | 国产精品视频观看 | 国偷自产视频一区二区久 | 天天综合天天做天天综合 | 国产不卡av在线 | 成人精品久久久 | 中文字幕你懂的 | 亚洲视频一 | 日韩中文字幕第一页 | 欧美福利在线播放 | 看国产黄色大片 | 国产精品久久久精品 | 国产精品久久久亚洲 | 精品国产99| 国产黄色片一级 | 97人人澡人人爽人人模亚洲 | 欧美久久综合 | 青青视频一区 | 黄p网站在线观看 | 欧美精品一区二区三区四区在线 | www.久久爱.cn| 91成品人影院 | 深爱五月激情网 | 成人免费观看网址 | 夜又临在线观看 | 视频在线一区 | 国产一区二区在线观看视频 | 天天操天天射天天 | 五月婷婷综合久久 | 欧美韩日精品 | 美女网站在线播放 | 日本成人中文字幕在线观看 | 国产一区二区在线影院 | 99热9| 国产 欧美 日韩 | 五月天久久精品 | 免费网站黄色 | 日本黄色大片免费 | 国产精品99久久久久久大便 | 国产女v资源在线观看 | 久久精品亚洲精品国产欧美 | 国产美女在线精品免费观看 | 中文字幕高清在线播放 | 日日夜夜操av | 国产精品九九久久99视频 | 国产一区视频免费在线观看 | 国产一级免费观看 | 永久精品视频 | av一级网站 | 亚洲综合在线视频 | 国产美女无遮挡永久免费 | 亚洲国产精品va在线看黑人动漫 | 久久久久免费精品视频 | 中文字幕一二三区 | 婷婷天天色 | 99色 | 91av视频免费观看 | 国产成人高清av | 色网站中文字幕 | 96久久精品 | 色天天| 国产.精品.日韩.另类.中文.在线.播放 | 婷婷色中文字幕 | 91成人免费看片 | 亚洲精品xx | 丁香视频五月 | 欧美精品三级 | 免费看成人 | 91免费的视频在线播放 | 草莓视频在线观看免费观看 | 日韩欧美一区二区在线播放 | 日韩 在线a| 免费精品视频在线 | 免费福利在线观看 | 日韩动态视频 | 黄色午夜| 国产123区在线观看 国产精品麻豆91 | 最近日本字幕mv免费观看在线 | 在线网站黄 | 亚洲精品在线观 | 亚洲 欧美 综合 在线 精品 | 国产日韩精品在线观看 | 天天色成人网 | 精品国产乱码久久久久久1区2匹 | av在线之家电影网站 | 日日婷婷夜日日天干 | 久久免费久久 | 国产精品第一页在线 | 欧美日韩不卡一区二区 | 国产精品精品久久久久久 | 欧美一区二区三区在线 | 偷拍精偷拍精品欧洲亚洲网站 | 国产剧在线观看片 | 国产精品久久久久四虎 | 成人在线观看你懂的 | 国产91精品高清一区二区三区 | 91尤物国产尤物福利在线播放 | 91丨porny丨九色| 在线激情小视频 | 久久久久久久久久亚洲精品 | 国产男女免费完整视频 | www.狠狠色.com | 欧美性色19p | 欧美日韩中文字幕视频 | 国产伦精品一区二区三区在线 | 中文字幕免费高清 | 国产视频中文字幕在线观看 | 婷婷久久亚洲 | 国产在线色视频 | 在线91av | 日韩三级成人 | 国产中文字幕在线看 | 免费在线观看av电影 | 国产色婷婷精品综合在线手机播放 | 九九热只有这里有精品 | 免费a视频在线观看 | 国产精品美女久久久久久久 | 国产美女搞久久 | 久久精品1区2区 | 色综合久久久久综合体桃花网 | www.com.日本一级 | 九九久| 国产在线免费av | 国产欧美在线一区 | 国产精品久久久久久吹潮天美传媒 | 国产视频精品在线 | 天天射天天色天天干 | 亚洲精品麻豆 | 国产日韩三级 | 成人av资源网| 丁香婷婷色 | 久久99九九99精品 | 美女在线黄 | 黄色国产高清 | 亚洲一区视频免费观看 | 久久精品99国产国产 | sm免费xx网站 | 99草在线视频 | 91成人短视频在线观看 | 91在线免费播放 | 香蕉在线播放 | 欧美日韩精品在线播放 | 国产精品久久久久久吹潮天美传媒 | 人人超碰97 | 免费观看成人网 | 日韩久久精品一区二区 | 久久久久久久久久久久影院 | 成人黄性视频 | 00av视频| 精品成人a区在线观看 | 97av影院 | 高潮毛片无遮挡高清免费 | 欧美另类重口 | 国产一区电影在线观看 | av电影 一区二区 | 色视频成人在线观看免 | 91大神视频网站 | 亚洲黑丝少妇 | 欧美福利视频 | 国产精品原创视频 | 国精产品999国精产品视频 | 日韩激情网 | 激情综合电影网 | 亚洲欧美经典 | 国产69精品久久99的直播节目 | 天天天插| 日韩毛片精品 | 波多野结衣亚洲一区二区 | 高清不卡一区二区在线 | 欧美日韩精品影院 | 三级av片 | www中文在线 | 蜜臀av.com | 久久国产精品一区二区三区 | av 一区二区三区四区 | 射九九| 五月天开心| 亚洲激情国产精品 | 国产小视频免费在线观看 | 欧美尹人 | 亚洲精品一区中文字幕乱码 | 不卡av免费在线观看 | 不卡视频国产 | 亚洲国产精品久久久 | 国产aaa免费视频 | 色干干 | 996久久国产精品线观看 | 日韩二区三区在线观看 | 又污又黄网站 | 欧美综合国产 | 激情久久影院 | 在线观看一二三区 | 国产精品视频不卡 | 毛片激情永久免费 | 在线视频日韩欧美 | 国产精品美女久久久久久 | 亚洲免费不卡 | 久久亚洲热 | av一级网站 | 麻豆成人精品 | 久久免费视频这里只有精品 | 综合网在线视频 | 国产香蕉久久 | 一级淫片在线观看 | 亚洲涩涩网 | 久久综合欧美精品亚洲一区 | 在线精品观看国产 | 国产在线精品二区 | 九九一级片 | 欧美日韩在线视频一区 | 一级成人在线 | 国产亚洲精品久久久久久久久久 | 亚洲精品理论 | 欧美午夜久久久 | 欧美视频国产视频 | 中文字幕精 | 日韩视频在线观看视频 | 国内外成人在线视频 | 日韩欧美在线视频一区二区 | 婷婷色吧 | 97在线免费 | 成人国产精品久久久久久亚洲 | 亚洲成a人片综合在线 | 国产美女精品久久久 | 久久午夜色播影院免费高清 | 97超碰免费在线 | 日韩av电影中文字幕 | 欧美韩国日本在线 | 欧美色插| 美女免费网视频 | 亚洲精品乱码久久久久久蜜桃91 | 免费人成网ww44kk44 | 国产69精品久久99不卡的观看体验 | 国产美女无遮挡永久免费 | 99精品国产成人一区二区 | 国产亚洲精品xxoo | 免费黄色看片 | 国产一区免费看 | 国产精品一区专区欧美日韩 | 亚洲综合在线观看视频 | 香蕉视频91 | 日本h在线播放 | 久久99久久99精品免费看小说 | 中文字幕第一页在线播放 | 亚洲va在线va天堂 | 国产高清av在线播放 | 亚洲乱码久久 | 伊人网站 | 99久久夜色精品国产亚洲96 | 最近2019年日本中文免费字幕 | 久久99网| 欧美日韩精品在线观看 | 免费的成人av | 久久国产精品99久久久久久丝袜 | 国产精品欧美久久久久天天影视 | 激情婷婷综合 | 91丨九色丨国产在线 | 国产aa免费视频 | 亚洲一区 影院 | 99婷婷| 精品一区在线看 | 欧美精品v国产精品v日韩精品 | 亚洲男模gay裸体gay | 久久超级碰视频 | 人人爽人人爱 | 久久99影院| 三级黄色免费 | 免费视频网 | 中文字幕一区二区三区四区在线视频 | 免费看的黄色的网站 | 九九色视频 | 97超碰成人| 国产偷在线 | 国产片网站 | 国产精品一级视频 | 日韩久久电影 | 精品国产伦一区二区三区观看方式 | 97精品国产91久久久久久久 | www日韩在线观看 | 在线播放一区 | 久久久精品亚洲 | 国产日韩一区在线 | 日韩一级理论片 | 97国产超碰在线 | 91av看片| 色综合久久中文字幕综合网 | 91视频电影 | 日韩精品影视 | 国精产品999国精产品岳 | 黄色一级在线视频 | 在线观看完整版免费 | 国产精彩视频 | 欧美激情综合网 | 亚州国产精品 | av免费网站观看 | 米奇狠狠狠888 | 91在线九色| 在线午夜| 成人av免费电影 | 黄色在线观看免费网站 | 国产一区二区三精品久久久无广告 | av色影院| 久久夜视频| 毛片网站观看 | 久久久久久久国产精品 | 五月婷婷网站 | 一区二区三区在线观看免费 | 日本xxxx裸体xxxx17 | 国产品久精国精产拍 | 激情婷婷 | 人人干在线 | 超碰在线成人 | 日韩欧美在线一区二区 | 欧美日韩中 | 丁香视频全集免费观看 | 日日操狠狠干 | 欧美午夜激情网 | 色视频成人在线观看免 | 国产精品黑丝在线观看 | 久久精品国产亚洲aⅴ | 精品中文字幕视频 | 久久精品99国产精品亚洲最刺激 | 亚洲欧洲精品久久 | 免费国产在线视频 | 91爱在线| 久久免费视频一区 | 一区二区三区四区五区六区 | 91在线日韩 | 激情五月亚洲 | 国产精品自产拍在线观看中文 | 美女网站一区 | 久久精品麻豆 | 久久精品小视频 | 欧美精品久久久久久久久老牛影院 | 天天操狠狠操 | av大全在线观看 | 久久成人麻豆午夜电影 | 国产日韩精品在线观看 | 人人澡超碰碰97碰碰碰软件 | 欧美性成人 | 天天射天天射 | 免费在线中文字幕 | 久久久www | 久久久久国产精品午夜一区 | 天天操夜夜看 | 五月天激情婷婷 | 国内精品久久久久久久影视简单 | 久操久| 黄色在线观看免费网站 | 天天操天天色天天 | 欧美日韩不卡在线视频 | 欧美日韩精品影院 | 插综合网| 欧美福利片在线观看 | 24小时日本在线www免费的 | 久久久人人人 | 波多野结衣亚洲一区二区 | 免费黄色av | 日韩h在线观看 | 久草在线免费在线观看 | 成人久久18免费网站麻豆 | 亚洲激精日韩激精欧美精品 | 国产成人综合图片 | 亚洲人人射 | 日产乱码一二三区别免费 | 麻豆视频观看 | 日韩视频中文字幕在线观看 | 天天干中文字幕 | 一级全黄毛片 | 超级碰碰碰免费视频 | 波多野结衣电影久久 | 高清久久久久久 | 黄色的视频 | 最新成人在线 | 日韩手机视频 | 久久国产电影院 | 亚洲精品xxxx | 欧美在线视频日韩 | 日本精油按摩3 | 亚洲色影爱久久精品 | 一级电影免费在线观看 | 色噜噜日韩精品一区二区三区视频 | 免费在线日韩 | 日本韩国精品一区二区在线观看 | 久久综合加勒比 | 在线观看黄 | 五月天久久精品 | 亚洲国产日韩欧美 | 天天操天天色天天 | 人人玩人人添人人澡超碰 | 成年人视频在线免费播放 | 97碰碰视频| 激情影音先锋 | 五月婷婷中文字幕 | 91麻豆精品 | 久久久久一区 | 欧美午夜精品久久久久久孕妇 | 欧美日bb| 国产精品视频免费 | 精品一区二区日韩 | 中文字幕在线观看完整版 | 久久精品久久综合 | 色婷婷丁香 | 亚洲精品中文字幕视频 | 欧美性生活免费 | 亚洲成人二区 | www视频在线观看 | 91视频麻豆 | 97超在线视频 | 婷婷丁香av| 视频二区在线视频 | 五月天综合激情 | 二区中文字幕 | 亚洲国产欧美在线人成大黄瓜 | 国产va在线观看免费 | 在线观看免费视频你懂的 | 免费观看久久久 | 久久久免费高清视频 | 91超级碰碰 | 久久视频在线视频 | 97国产在线观看 | 国产精品自产拍在线观看桃花 | 91亚洲视频在线观看 | 十八岁免进欧美 | 狠狠色丁香久久婷婷综 | 伊人导航| 国产91精品久久久久 | 中国一级片在线 | 亚洲国产视频在线 | 中文字幕亚洲欧美日韩2019 | 在线国产激情视频 | 国产日韩精品一区二区 | 亚洲精品成人网 | 成人啊 v| 日韩av电影免费观看 | 玖玖爱国产在线 | 久久久999 | 中文字幕电影网 | 13日本xxxxxⅹxxx20| 中文字幕国产一区二区 | 久草a视频| 国产亚洲欧洲 | 天天色天天操天天爽 | 在线视频观看亚洲 | 91丨九色丨蝌蚪丰满 | 日韩va在线观看 | 色黄www小说| 国产精品久久久久久久久久久久久久 | 亚洲精品成人在线 | 国产精品18久久久久久不卡孕妇 | 91网站在线视频 | 亚洲 欧美 91| 字幕网资源站中文字幕 | 91精品国产麻豆 | 五月综合婷 | 最近能播放的中文字幕 | www.久久免费视频 | 日批在线观看 | 视频一区二区免费 | www178ccom视频在线 | a级片韩国 | 国产一区二区网址 | 91人人爽人人爽人人精88v | 六月丁香六月婷婷 | 久久视频在线免费观看 | 久久久久久久久久久网站 | 久久久久久国产精品亚洲78 | 91资源在线播放 | 国产二区免费视频 | 日韩精品一区二区三区电影 | 婷婷 综合 色| 国产精品日韩久久久久 | 国产99久久99热这里精品5 | 99久久久久久久久久 | 亚洲春色奇米影视 | 免费合欢视频成人app | 91亚洲精品久久久久图片蜜桃 | 久久久精品久久日韩一区综合 | 亚洲蜜桃在线 | 夜夜爽88888免费视频4848 | 久色免费视频 | 国产精品18久久久久久久 | 97热在线观看 | 99人久久精品视频最新地址 | 国产精品午夜在线观看 | 国产精品久久久久久久久久久免费看 | 成人在线观看资源 | av福利电影 | 永久免费毛片在线观看 | 高清视频一区 | 在线观看的黄色 | 国产亚洲精品久 | www.亚洲| 日韩av电影一区 | 欧美久久久影院 | 国产特级毛片aaaaaaa高清 | 免费在线一区二区 | 精品一区二区在线免费观看 | 黄色av观看 | 在线最新av | 国产字幕在线看 | 国产在线超碰 | 91视频一8mav | 狠狠色狠狠色综合日日92 | 日本高清中文字幕有码在线 | 黄色a一级视频 | 国色综合 | 国产精品自产拍在线观看网站 | 在线综合 亚洲 欧美在线视频 | 最近2019年日本中文免费字幕 | 精品国产中文字幕 | 天天干天天做天天爱 | 成年人黄色av | 亚洲高清在线精品 | 久久综合色影院 | 91久久精品一区二区三区 | 四虎在线影视 | 欧美亚洲一区二区在线 | 91电影福利 | 在线视频观看你懂的 | 黄色大片av | 国产精品麻豆果冻传媒在线播放 | 国产专区视频在线观看 | 国产高清绿奴videos | 亚洲国产欧美一区二区三区丁香婷 | 中文字幕在线色 | 高潮久久久| 黄网站www| 在线观看自拍 | 狠狠色伊人亚洲综合成人 | 色瓜| av一级一片 | 日韩av一区在线观看 | 久久久婷 | 国产精品亚洲人在线观看 | 免费黄色在线网站 | 国产一区视频在线观看免费 | 久久成人国产 | 久久亚洲欧美 | 色姑娘综合天天 | 久久精品精品电影网 | 亚洲精品免费在线观看 | www.福利 | www.成人久久 | 免费在线观看成人 | 在线天堂日本 | 中文字幕在线视频一区二区三区 | 日本成人中文字幕在线观看 | 亚洲国产中文字幕在线视频综合 | 天天操天天射天天插 | 精品国精品自拍自在线 | 亚洲片在线观看 | 成人av电影免费观看 | 黄色三几片 | 日韩女同一区二区三区在线观看 | 亚洲精品美女在线观看播放 | 精品在线观看一区二区 | 午夜精品一区二区三区可下载 | 免费视频一级片 | 欧美另类调教 | 久久伊99综合婷婷久久伊 | 亚洲理论在线 | 亚洲欧洲日韩在线观看 | 激情 亚洲| 国产不卡一二三区 | 国产精品久久毛片 | 国产精品成人一区二区三区吃奶 | 波多在线视频 | av一级片 | 久久视频一区二区 | 国产一在线精品一区在线观看 | 国产91免费观看 | 中文字幕av最新 | 中文字幕在线色 | 99re6热在线精品视频 | 亚洲免费观看在线视频 | 蜜桃av观看 | 免费看成年人 | 欧美激情亚洲综合 | www.黄色片.com| 欧美日韩精品电影 | 2017狠狠干| 国产在线观看二区 | 超碰97人人射妻 | 国产美女精品久久久 | www五月婷婷| 丁香久久综合 | 国内精品久久久久久久久久清纯 | 综合色婷婷 | 免费在线观看av网站 | 久久99久久99精品免视看婷婷 | 在线观看一级 | 天堂网在线视频 | 亚洲一二区精品 | 亚洲黄a| 五月综合网站 | 亚洲天天干| 欧洲在线免费视频 | 国产一区二区在线观看视频 | av一级二级 | 国产精品午夜av | 免费黄色av | 免费福利小视频 | 国产又粗又猛又爽又黄的视频先 | 福利一区在线视频 | 在线看不卡av | 亚洲人成人99网站 | 欧美在线91 | 91久久久国产精品 | 中文伊人 | 天天综合网国产 | 97天天干| 欧美精品一区二区免费 | 男女视频91 | 最新av免费| 91视频在线自拍 | 激情开心站 | 国产麻豆果冻传媒在线观看 | 在线播放国产精品 | 日韩成人在线一区二区 | 在线免费观看的av | 外国av网| 九九久久视频 | av在线免费在线观看 | 亚洲欧美国产日韩在线观看 | 久久y| 成片免费观看视频大全 | 超碰成人免费电影 | 国产一区二区在线免费 | 中文字幕高清av | 九九在线国产视频 | 国产中文字幕三区 | www色综合 | 欧美久久久久久久久久久久久 | 天天操网 | 又黄又刺激视频 | 久久精品中文字幕免费mv | 草久草久 | 国内精品久久久久久久97牛牛 | 国内精品久久久久久久久久久 | 色婷婷色 | 人人舔人人插 | 黄色一集片 | av日韩在线网站 | av免费在线播放 | 欧美一区免费在线观看 | 在线观看资源 | 国产99久久九九精品免费 | 狠狠色狠狠色综合日日小说 | 国产精品第10页 | 国产精品毛片一区二区在线 | 色综合久久五月天 | 国产精品区二区三区日本 | 看毛片网站 | 91亚洲精品久久久蜜桃借种 | 欧美最爽乱淫视频播放 | 丰满少妇在线观看资源站 | 中文字幕中文字幕 | 欧美激情第十页 | 九九热只有精品 | 亚洲自拍偷拍色图 | 久久亚洲欧美日韩精品专区 | 亚洲电影图片小说 | 三上悠亚一区二区在线观看 | 99精品在线观看视频 | 黄色毛片观看 | 4p变态网欧美系列 | 亚洲va欧洲va国产va不卡 | 国产四虎影院 | 国产精品av在线免费观看 | 在线观看黄色小视频 | 麻豆影视在线观看 | 黄色国产高清 | 国产一级黄 | 亚洲日本色 | 在线观看日韩中文字幕 | 狠狠干狠狠色 | 欧美黄网站 | 国产黄在线免费观看 | 国产成人久久精品77777综合 | 久久免费视频4 | 99在线热播精品免费 | 成人av片在线观看 | 国产理论一区二区三区 | 在线观看免费色 | 久久久久久久久久久久久久av | 成人午夜在线电影 | 成人久久国产 | 黄色录像av | 国产美女免费视频 | 亚洲精品国产精品久久99 | 中文在线字幕观看电影 | 亚洲精品在线免费播放 | 日韩精品在线看 | 欧美大片在线看免费观看 | 99精品网站| 日韩午夜av电影 | 中文字幕永久在线 | 欧美日韩三区二区 | 日韩在线 一区二区 | 97碰碰精品嫩模在线播放 | 福利视频导航网址 | 婷婷色狠狠 | 国产h片在线观看 | 欧美乱码精品一区二区 | 少妇激情久久 | 香蕉久久久久 | 西西人体4444www高清视频 | 欧美在线一 | 伊人久久精品久久亚洲一区 | 人人爽人人香蕉 | 国产免费资源 | 久久综合久久综合久久综合 | 中文字幕av免费在线观看 | 中文在线www | 国产午夜精品福利视频 | 亚洲aⅴ一区二区三区 | 中文字幕在线视频一区二区 | 美女视频a美女大全免费下载蜜臀 | 久久精品一二三区白丝高潮 | 国内精品久久久久久久久久久久 | 91av视频观看 | 成年人视频在线免费观看 | 精品产品国产在线不卡 | 欧美性极品xxxx做受 | 狠狠色丁香婷婷综合橹88 | 五月天久久婷婷 | 欧美在线久久 | 国产日韩欧美自拍 | 亚洲精品在线视频播放 | 免费网站黄 | 日韩一区二区三区高清免费看看 | 色五月色开心色婷婷色丁香 | 亚洲欧美国产精品久久久久 | 精品国产午夜 | 国产一区二区三区免费视频 | 在线视频一区二区 | 亚洲国产伊人 | 69中文字幕| 久久伊人婷婷 | 久久精品这里热有精品 | 国产精品对白一区二区三区 | 亚洲视频 视频在线 | 99视频在线观看视频 | 久99久精品 | 2019精品手机国产品在线 | 激情丁香月 | 91久久国产露脸精品国产闺蜜 | 精品超碰| 国产精品久久嫩一区二区免费 | 中文av字幕在线观看 | 超碰成人免费电影 | 中文字幕亚洲精品日韩 | 久久久资源网 | 国产麻豆视频在线观看 | 97视频人人 | 51久久夜色精品国产麻豆 | 99成人在线视频 | 色偷偷人人澡久久超碰69 | 激情深爱.com | 正在播放一区二区 | 在线观看免费 | 91在线日本 | 免费观看性生活大片 | 奇人奇案qvod | 亚洲三级黄 | www在线免费观看 | 亚洲一区尤物 | 国产做a爱一级久久 | 久久精品视频网站 | 五月天高清欧美mv | 久久免费99精品久久久久久 | 精品国产一二三 | 亚洲一区av | 欧美日韩视频一区二区三区 | 成年人电影免费在线观看 | 久久99电影 | 日韩毛片在线免费观看 | 亚洲免费视频在线观看 | 中国精品少妇 | 天天色棕合合合合合合 | 欧美日韩一级视频 | 二区三区中文字幕 | 三级小视频在线观看 | 日韩av资源站 | 国产精品99久久久久的智能播放 | 亚洲精品乱码久久久久久高潮 | 一本一道波多野毛片中文在线 | av成人在线网站 | 99久久久国产精品美女 | 在线视频1卡二卡三卡 | 国产福利精品视频 | 天堂在线视频中文网 | 久久国产精品免费视频 | 久草在线中文视频 | 日本高清中文字幕有码在线 | 日韩二三区| 国产精品18久久久久久久网站 | 国产精品2区 | 精品理论片 | 国产精品原创视频 | 国内精品久久久久久久影视麻豆 | 99视频在线免费观看 | 999热线在线观看 | 少妇自拍av | 久久人人爽人人爽人人片av免费 | 国内视频在线 | 国产欧美三级 | 欧美日韩一区二区三区在线免费观看 | 亚洲综合网站在线观看 | 黄色成人av | 日韩手机在线观看 | 成人av av在线 | 日本不卡视频 | 亚洲黄色精品 | 人人爽人人爽人人爽学生一级 | 免费麻豆| 久久久久久久久久久免费视频 | 黄色网免费 | 国产精品人人做人人爽人人添 | 成人久久18免费 | 亚洲精品777 | 国产小视频免费在线网址 | 超碰97人| 国产精品美女在线 | 999视频网| 免费 在线 中文 日本 | 婷婷丁香在线观看 | 久久国产午夜精品理论片最新版本 | 精品一区二区在线免费观看 | 亚洲国产三级在线观看 | av解说在线 | 色综合天天色 | 久久五月婷婷丁香 | 91喷水| 99久久精品久久亚洲精品 | 久久艹在线| 久久国产精品免费看 | 国产成人免费av电影 | 又污又黄网站 | 国产亚洲婷婷免费 | 色999精品| 精品视频不卡 | 丁五月婷婷 | 色噜噜狠狠色综合中国 | 操一草 | av在线一级 | 中文字幕在线日亚洲9 | 国产精品一区二区视频 | 青青河边草免费视频 | 欧美日韩亚洲国产一区 | 中文字幕在线看视频 | 久草| 国产精品中文字幕在线 | 国产xxxx做受性欧美88 | 亚洲桃花综合 | 免费在线播放av电影 | 免费在线色 | 国产 日韩 欧美 在线 | 亚洲精品成人免费 | 亚洲激情一区二区三区 | 精品欧美乱码久久久久久 | 久久在线免费观看 | av7777777| 在线色吧| 国产高清视频网 | 成人全视频免费观看在线看 | 一二三四精品 | 久久九九影视网 | 国产精品99久久久久 | 97超碰在线人人 | 久久免费视频3 | 国产原创在线 | 久久av影视| 国产专区免费 | 91cn国产在线 | 在线观看免费高清视频大全追剧 | 国产精品入口66mio女同 | 久青草视频在线观看 | 人人草在线观看 | 九九久久免费视频 | 狠狠色噜噜狠狠狠 | 精品一区在线看 | 一区视频在线 | 99精品亚洲 | 亚洲成人动漫在线观看 | 六月色婷婷 | 国产亚洲精品久久久久久大师 | 深爱激情久久 | 日韩av中文字幕在线 |