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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

restful和rest_HATEOAS的RESTful服务:JVM上的REST API和超媒体

發(fā)布時間:2023/12/3 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 restful和rest_HATEOAS的RESTful服务:JVM上的REST API和超媒体 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

restful和rest

1.簡介

到目前為止,我們已經花了很多時間談論了相當數量的關于角色的的超媒體和HATEOAS在REST風格的 Web服務和API,掃視不同規(guī)格和可用性方面。 聽起來好像支持超媒體和HATEOAS并不難,只需選擇您的收藏夾就可以了! 您可能會猜到,現實是“好,取決于情況”,在本教程的這一部分中,我們將理解“為什么”。 困難的學習方法是從頭開始設計和實現它們。 這正是我們將要忙的事情,主要在Java中將RESTful Web API和客戶端引入JVM平臺。

我們將為其設計RESTful Web API的應用程序是我們之前涉及的案例研究的擴展版本。 從業(yè)務角度來看,我們將實施一個可以讓客戶租車的租車平臺。 我們的目標是根據REST架構風格的原則和約束來構建該平臺。

目錄

1.簡介 2.從CRUD到工作流程 3.在服務器上
3.1。 JAX-RS 3.2。 Quarkus,Micronaut,Helidon…… 3.3。 Crnk 3.4。 Spring帽子 3.5。 九頭蛇
4.在客戶端上
4.1。 JAX-RS 4.2。 Crnk 4.3。 Spring帽子
5。結論 6.接下來 7.下載源代碼

2.從CRUD到工作流程

超媒體作為驅動力的存在極大地改變了設計過程。 不幸的事實是,目前大多數基于HTTP的Web服務和API基本上都是CRUD代理,用于其后面的數據存儲。 僅僅公開數據模型并不能幫助客戶理解他們可以做什么,他們注定要在許多地方復制服務器的業(yè)務邏輯(至少是業(yè)務邏輯的大部分)。 這不是經過深思熟慮的REST應用程序應該做的。

REST API應該花費幾乎所有的描述性精力來定義用于表示資源和驅動應用程序狀態(tài)的媒體類型,或者為現有標準媒體類型定義擴展關系名稱和/或啟用超文本的標記。 花費所有精力描述應該在媒體類型的處理規(guī)則范圍內(并且在大多數情況下已由現有媒體類型定義)完全定義對感興趣的URI使用哪種方法。

https://roy.gbiv.com/untangled/2008/rest-apis-must-be-超文本驅動

代替CRUD ,我們應該將RESTful Web API視為工作流。 通過就適當的媒體類型達成共識,服務器和客戶端可以就如何解釋它們達成共識。 鏈接,關系和操作(支付能力)的存在會引導客戶采取可能的后續(xù)步驟。 換句話說,服務定義并共享供客戶遵循的工作流。

3.在服務器上

在深入研究庫和框架之前,最好先了解我們正在嘗試作為應用程序一部分構建的RESTful Web API的工作流程。 下圖是這樣做的嘗試。

租車API工作流程

誠然,工作流遠非詳盡無遺,但足以說明現實世界中RESTful Web API的復雜性,挑戰(zhàn)和好處。

最后但并非最不重要的一點是,我們尚未決定要使用哪種超媒體規(guī)范 。 HAL的簡單性,輕量級結構和廣泛采用(以及HAL-FORMS )使其成為大多數情況下的不錯選擇,這就是我們將用于RESTful Web API的方式。

制定戰(zhàn)略決策后,就該討論技術細節(jié)了。 首先,我們正在尋找對我們有幫助的庫或框架。

JAX-RS

Jakarta RESTful Web服務規(guī)范(更好地稱為JAX-RS 2.1 ( JSR-370 ))是在JVM平臺上實現RESTful Web服務和API的最受歡迎選擇之一。

JAX-RS : RESTful Web服務的Java API ( JAX-RS )是一種Java編程語言API規(guī)范,它提供了根據代表性狀態(tài)轉移(REST)架構模式創(chuàng)建Web服務的支持。

https://projects.eclipse.org/projects/ee4j.jaxrs

盡管它包括全面的服務器端和客戶端支持,但除了引入非常基本的Link表示之外,它幾乎沒有解決任何超媒體功能。

一些JAX-RS參考實現(例如Jersey )進行了努力,并捆綁了自己的專有擴展以促進對超媒體的支持,但是正如您所期望的那樣,這些都不是規(guī)范的一部分。 這當然是有幫助的,但仍然需要開發(fā)人員完成大量工作。

Quarkus,Micronaut,Helidon……

向微服務架構和云計算的加速轉變導致了新一代的云原生框架的泛濫。 對于JVM平臺尤其如此,在JVM平臺上,著名的領導者正受到Quarkus , Micronaut和Helidon等人的挑戰(zhàn)。

實際上,對于大多數媒體 而言 , 超媒體和HATEOAS并不是首要任務。 Micronaut是異常值的一個示例,該異常值至少包含基本的超媒體元素 ,但總的來說,您是一個人。

Crnk

如果您碰巧選擇了JSON:API規(guī)范來支持RESTful Web服務和API,那么Crnk框架當然值得一看。

Crnk是JSON API規(guī)范和Java中建議的實現,以促進構建RESTful應用程序。 它提供了許多可以使應用程序受益的約定和構造塊。 這包括諸如排序,過濾,分頁,請求復雜對象圖,稀疏字段集,將鏈接附加到數據或自動執(zhí)行多項操作等功能。 與框架和庫(例如Spring,CDI,JPA,Bean驗證,Dropwizard,Servlet API,Zipkin等)的進一步集成可確保JSON API與Jav??a生態(tài)系統(tǒng)完美地結合在一起。

https://github.com/crnk-project/crnk-framework

Crnk采用以資源為中心的API建模方法,基本上可以實現非常干凈且可維護的實現。 引用文檔, 資源,關系存儲庫是Crnk的核心構建塊。 下面的代碼段很好地說明了這些概念。

@JsonApiResource(type = "customer", resourcePath = "customers") public class Customer {@JsonApiId private String id;@NotNull @NotBlank private String firstName;@NotNull @NotBlank private String lastName;@JsonApiRelation(mappedBy = "customer")private Collection<Reservation> reservations;// Getters and setters here... }@JsonApiResource(type = "reservation", resourcePath = "reservations") public class Reservation {@JsonApiId private String id;private String vehicle;@NotNull @FutureOrPresent private LocalDate from;@NotNull @FutureOrPresent private LocalDate to;@JsonApiRelation private Customer customer;// Getters and setters here... }@Repository public class CustomerRepository implements ResourceRepository<Customer, String> {// Implementation of the repository methods here... }@Repository public class ReservationRepository implements ResourceRepository<Reservation, String> {// Implementation of the repository methods here... }

基本上就是這樣,根據集成( Vert.X , JAX-RS和Spring Boot ), Crnk框架將為您完成其余工作。 不幸的是, Crnk不支持ALPS或JSON Hyper-Schema (至少是開箱即用的)。

但是由于我們決定使用HAL而不是JSON:API ,所以我們必須繼續(xù)搜索。

Spring帽子

構成Spring產品組合的項目數量確實令人印象深刻。 我們特別感興趣的是Spring HATEOAS ,它是一個庫,用于支持實現超媒體驅動的RESTful Web服務和API的表示形式。 它實現了HAL , HAL-FORMS , Collection + JSON和UBER規(guī)范,并且加分了一點,它帶有ALPS支持,非常適合我們完成已設定的目標。

如人們所料, Spring HATEOAS自然地與典型的Spring Boot Web應用程序集成,包括傳統(tǒng)的Spring MVC和響應式Spring WebFlux堆棧。 @EnableHypermediaSupport批注以及Spring Boot自動配置功能會根據您選擇的一個(或多個)規(guī)范來激活超媒體支持。

@SpringBootConfiguration @EnableHypermediaSupport(type = HypermediaType.HAL_FORMS) public class ReservationServiceConfig {@BeanHalFormsConfiguration halFormsConfiguration() {final HalFormsConfiguration configuration = new HalFormsConfiguration();configuration.registerPattern(LocalDate.class, "yyyy-MM-dd");return configuration;} }

遵循非正式的命名約定, RootController我們的RESTful Web API提供RootController 。

@RestController public class RootController {@GetMapping("/")public ResponseEntity<RepresentationModel<?>> root() {final RepresentationModel<?> model = new RepresentationModel<>();model.add(linkTo(methodOn(RootController.class).root()).withSelfRel());model.add(templated(linkTo(methodOn(ReservationController.class).findAll(null)), "reservations").withProfile(linkTo(methodOn(RootController.class).reservations()).withSelfRel().getHref()));model.add(linkTo(methodOn(CustomerController.class).findAll()).withRel("customers").withProfile(linkTo(methodOn(RootController.class).customers()).withSelfRel().getHref()));return ResponseEntity.ok(model);} }

控制器返回的HAL文檔提示了下一個可用的導航方向。

{ "_links": { "self": { "href": "https://rentals.jcg.com" }, "reservations": { "href": "https://rentals.jcg.com/reservations{?page,size,sort}", "profile": "https://rentals.jcg.com/alps/reservations", "templated" : true }, "customers": { "href": "https://rentals.jcg.com/customers", "profile": "https://rentals.jcg.com/alps/customers" } } }

有些事情可能引起您的注意。 第一個是reservations關系的鏈接,該鏈接作為模板返回。 第二個是每個鏈接關系的profile屬性的存在,指向各自的ALPS配置文件。 下面的代碼段說明了用于構建reservations收集資源的ALPS配置文件的Spring HATEOAS API。

@GetMapping(value = "/alps/reservations", produces = MediaTypes.ALPS_JSON_VALUE) public ResponseEntity<Alps> reservations() {return ResponseEntity.ok(Alps.alps().doc(doc().href("https://rentals.jcg.com/documentation.html").build()).descriptor(List.of(descriptor().id("reservations").type(Type.SEMANTIC).rt("#reservation").descriptor(Arrays.asList(descriptor().id("book").name("reservations").type(Type.UNSAFE).rt("#reservation").build(),descriptor().id("list").name("reservations").type(Type.SAFE).rt("#reservation").build())).build(),descriptor().id("reservation").type(Type.SEMANTIC).descriptor(Stream.concat(PropertyUtils.getExposedProperties(Reservation.class).stream().map(property -> descriptor().id(property.getName()).href(href(property)) .type(Type.SEMANTIC).build()),Stream.of(descriptor().id("customer").type(Type.SAFE).rt("#customer").build(),descriptor().id("update").name("reservation").type(Type.IDEMPOTENT).rt("#reservation").build(),descriptor().id("cancel").name("reservation").type(Type.IDEMPOTENT).rt("#reservation").build())).collect(Collectors.toList())).build())).build()); }

分別是ALPS reservations集合資源概要文件的JSON表示,這基本上是客戶端要處理的內容。

{"version": "1.0","doc": {"href": "https://rentals.jcg.com/documentation.html"},"descriptor": [ {"id": "reservations","type": "SEMANTIC","descriptor": [ {"id": "book","name": "reservations","type": "UNSAFE","rt": "#reservation"}, {"id": "list","name": "reservations","type": "SAFE","rt": "#reservation"} ],"rt": "#reservation"}, {"id": "reservation","type": "SEMANTIC","descriptor": [ {"id": "from","href" : "https://schema.org/Date","type": "SEMANTIC"}, {"id": "id","href" : "https://schema.org/Thing#identifier","type": "SEMANTIC"}, {"id": "to","href" : "https://schema.org/Date","type": "SEMANTIC"}, {"id": "vehicle","href" : "https://schema.org/Vehicle#name","type": "SEMANTIC"}, {"id": "customer","type": "SAFE","rt": "#customer"}, {"id": "update","name": "reservation","type": "IDEMPOTENT","rt": "#reservation"}, {"id": "cancel","name": "reservation","type": "IDEMPOTENT","rt": "#reservation"} ]} ] }

本著超媒體和HATEOAS的精神, Spring HATEOAS方法也是面向資源的(或者更確切地說 ,面向資源表示的)。 基本上,您必須實現許多RepresentationModelAssembler (例如ReservationResourceAssembler )和控制器端點,這些端點依賴于各自的匯編器來構造單個資源表示或資源集合表示。

@Component public class ReservationResourceAssembler implements SimpleRepresentationModelAssembler<Reservation> {@Overridepublic void addLinks(EntityModel<Reservation> resource) {resource.add(linkTo(methodOn(CustomerController.class).findOne(resource.getContent().getCustomerId())).withRel("customer").withType(linkTo(methodOn(RootController.class).customers()).slash("#customer").toString()));resource.add(linkTo(methodOn(ReservationController.class).findOne(resource.getContent().getId())).withSelfRel().withType(linkTo(methodOn(RootController.class).reservations()).slash("#reservation").toString()).andAffordance(afford(methodOn(ReservationController.class).modify(resource.getContent().getId(), null))).andAffordance(afford(methodOn(ReservationController.class).cancel(resource.getContent().getId()))));} }

除了與customer的鏈接關系外,還有許多用于更改預留資源狀態(tài)( modify或cancel預留狀態(tài))的優(yōu)惠(動作)。 另外,由于reservations收集資源正在使用分頁(和排序),因此其表示的構造稍微復雜一點,并且涉及兩個匯編程序,因此讓我們看一下該示例。

@RestController @RequestMapping(path = "/reservations") public class ReservationController {@Autowired private ReservationRepository repository;@Autowired private ReservationResourceAssembler reservationResourceAssembler;@Autowired private PagedResourcesAssembler>Reservation< assembler;@GetMappingpublic ResponseEntity>PagedModel>EntityModel>Reservation<<< findAll(@PageableDefault Pageable pageable) {return ResponseEntity.ok(assembler.toModel(repository.findAll(pageable), reservationResourceAssembler));} }

為了演示分頁的效果,僅用說2個元素的頁面大小來獲取reservations集合就足夠了。

{ "_embedded": { "reservations": [ { "id": "13e1892765c5", "vehicle": "Honda Civic 2020", "from": "2020-01-01", "to": "2020-01-05", "_links": { "customer": { "href": "https://rentals.jcg.com/customers/fed195a03e9d", "type": "https://rentals.jcg.com/alps/customers#customer" }, "self": { "href": "https://rentals.jcg.com/reservations/13e1892765c5", "type": "https://rentals.jcg.com/alps/reservations#reservation" } }, "_templates": { "cancel": { "method": "delete", "properties": [ ] }, "default": { "method": "put", "properties": [ { "name": "from", "regex": "yyyy-MM-dd", "required": true }, { "name": "to", "regex": "yyyy-MM-dd", "required": true }, { "name": "vehicle", "required": true } ] } } }, { "id": "fc14e8ef90f5", "vehicle": "BMW 325i", "from": "2020-01-10", "to": "2020-01-12", "_links": { "customer": { "href": "https://rentals.jcg.com/customers/fed195a03e9d", "type": "https://rentals.jcg.com/alps/customers#customer" }, "self": { "href": "https://rentals.jcg.com/reservations/fc14e8ef90f5", "type": "https://rentals.jcg.com/alps/reservations#reservation" } }, "_templates": { "cancel": { "method": "delete", "properties": [ ] }, "default": { "method": "put", "properties": [ { "name": "from", "regex": "yyyy-MM-dd", "required": true }, { "name": "to", "regex": "yyyy-MM-dd", "required": true }, { "name": "vehicle", "required": true } ] } } } ] }, "_links": { "first": { "href": "https://rentals.jcg.com/reservations?page=0&size=2" }, "self": { "href": "https://rentals.jcg.com/reservations?page=0&size=2" }, "next": { "href": "https://rentals.jcg.com/reservations?page=1&size=2" }, "last": { "href": "https://rentals.jcg.com/reservations?page=1&size=2" } }, "page": { "size": 2, "totalElements": 3, "totalPages": 2, "number": 0 } }

很容易發(fā)現附加的導航鏈接first , next和last ,它們實際上是上下文相關的(例如,由于我們要求第一頁,因此不存在prev鏈接關系)。

可以肯定地說Spring HATEOAS為JVM平臺提供了最全面的超媒體和HATEOAS支持。 盡管它沒有立即實現某些規(guī)范,但它允許通過一組SPI 插入自定義媒體類型 。

九頭蛇

決定采用JSON-LD和Hydra的RESTful Web服務和API可能會受益于使用hydra-java庫。 Spring HATEAOS擴展的出現非常令人鼓舞,但不幸的是,由于它不能與最新的Spring HATEOAS版本一起使用而被陰影掩蓋 。

有了這個,我們對RESTful Web服務和API的服務器端實現有了一個很好的主意,現在該切換主題并討論客戶端。

4.在客戶端上

從客戶端角度,區(qū)分超媒體 API客戶端的兩個角度或類是有意義的:

  • (Web)用戶界面(前端)上下文中的超媒體 API客戶端
  • 業(yè)務任務實施(后端)環(huán)境中的超媒體 API客戶端

JavaScript是Web前端開發(fā)的第一選擇,而Java(通常是JVM)已經在后端方面占據了主導地位。 盡管我們將進一步討論后者,但許多概念同樣適用于兩者。

那么, 超媒體 API客戶端的設計和實現背后的原理是什么? 如果要強調的是一件事,那就是專注于針對超媒體規(guī)范進行編程,而不是檢查服務器的響應。 媒體類型應向客戶提供所有必要的詳細信息,并作為實施指南。 而且,客戶可能只使用一些特定的流程,而無需實現服務必須提供的所有功能。

JAX-RS

JAX-RS 2.1規(guī)范包括客戶端部分,不幸的是,該客戶端部分僅提供了從Link頭中提取鏈接的方法。

final Client client = ClientBuilder.newClient();try (final Response response = client.target("https://rentals.jcg.com/").request().accept("application/prs.hal-forms+json").get()) {final Link customers = response.getLink("customers");if (customers != null) {// follow the link here } } finally {client.close(); }

基本上,與服務器端一樣 ,如果您需要完成某些工作,請準備好卷起袖子。

Crnk

Crnk框架提供了很好的客戶端支持,并通過熟悉的構建塊實現了這些構建塊:資源,關系和存儲庫。

final CrnkClient client = new CrnkClient("https://rentals.jcg.com/"); client.setHttpAdapter(new OkHttpAdapter());final ResourceRepository>Customer, String< repository = client.getRepositoryForType(Customer.class);final ResourceRepository>Customer, String< repository = client.getRepositoryForType(Customer.class); final List>Customer< customers = repository.findAll(new QuerySpec(Customer.class).setPaging(new OffsetLimitPagingSpec(0L, 10L)));if (!customers.isEmpty()) {// navigate through customers }

如果您的RESTful Web服務和API遵循JSON:API規(guī)范,則Crnk客戶端可以為您節(jié)省大量時間和精力。

Spring帽子

令人驚訝的是,直到最近SpringHATEOAS對超媒體客戶端的支持還有些不完整,但是最新版本帶來了許多改進 。 Traverson是Spring HATEOAS支持的最古老的機制,用于在鏈接和關系之間導航。

final RestTemplate template = ...;final Map>String, Object< paging = Map.of("page", 0L,"size", 2L);final CollectionModelType>Reservation< resourceType =new TypeReferences.CollectionModelType>Reservation<() {};final Traverson traverson = new Traverson(URI.create("https://rentals.jcg.com/"), MediaTypes.HAL_FORMS_JSON).setLinkDiscoverers(List.of(new HalFormsLinkDiscoverer())).setRestOperations(template);final CollectionModel>Reservation< reservations = traverson.follow(rel("reservations").withParameters(paging)).toObject(resourceType);;if (!reservations.getContent().isEmpty()) {// navigate through reservations }

像WebClient和RestTemplate這樣的更傳統(tǒng)的通用API客戶端(我們稱它們?yōu)镽EST客戶端)也已經得到了超媒體支持。

final WebClient client = builder.build();final CollectionModelType>Reservation< resourceType =new TypeReferences.CollectionModelType>Reservation<() {}; final LinkDiscoverer discoverer = new HalFormsLinkDiscoverer();final Optional>Link< link = client.get().uri("https://rentals.jcg.com/").accept(MediaTypes.HAL_FORMS_JSON).retrieve().bodyToMono(String.class).map(r -< discoverer.findLinkWithRel("reservations", r)).block();if (link.isPresent()) {final Map>String, Object< paging = Map.of("page", 0L,"size", 2L);final URI uri = link.get().getTemplate().expand(paging);final CollectionModel>Reservation< reservations = client.get().uri(uri).accept(MediaTypes.HAL_FORMS_JSON).retrieve().bodyToMono(resourceType).block();if (!reservations.getContent().isEmpty()) {// navigate through reservations} }

您甚至可以選擇Traverson , RestTemplate或WebClient ,當然可以實現功能強大的超媒體 API客戶端,以完全自動化服務工作流程。

5。結論

在本教程的這一部分中,我們討論了可幫助您在JVM平臺上設計和實現超媒體驅動的RESTful Web API及其客戶端的庫和框架。 盡管數量不多,但您可以選擇。

由于它主要是使用JavaScript在瀏覽器端完成的,因此我們跳過了在Web前端上下文中有關超媒體 API客戶端的討論。 在這方面,仍然值得一提的是Traverson ,它是Node.js和瀏覽器的超媒體 API / HATEOAS客戶端(是的,這是Spring HATEAOS的靈感來源)。

6.接下來

在接下來的本教程的最后一部分,我們將總結REST體系結構樣式中最被遺忘和神秘的約束( 超媒體作為應用程序狀態(tài)引擎( HATEOAS ))背后的理論和實踐。

7.下載源代碼

下載
您可以在此處下載此示例的完整源代碼: 具有HATEOAS的RESTful服務:JVM上的REST API和超媒體

翻譯自: https://www.javacodegeeks.com/restful-services-with-hateoas-rest-apis-and-hypermedia-on-jvm.html

restful和rest

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的restful和rest_HATEOAS的RESTful服务:JVM上的REST API和超媒体的全部內容,希望文章能夠幫你解決所遇到的問題。

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

免费亚洲一区二区 | 亚洲天堂首页 | 奇米7777狠狠狠琪琪视频 | 伊人天天狠天天添日日拍 | 激情综合五月天 | 日韩一区二区三免费高清在线观看 | 日韩视频在线播放 | 久久综合色播五月 | 日韩三级视频在线观看 | 欧美日韩在线观看一区二区三区 | 国产九九九九九 | 欧美日韩三区二区 | 超碰人人干人人 | 性色在线视频 | 91麻豆产精品久久久久久 | 免费在线观看av片 | 在线视频欧美日韩 | 一区二区三区在线看 | a级免费观看 | 伊人春色电影网 | 欧美 亚洲 另类 激情 另类 | 久久视精品 | 国产精品视频在线观看 | 色天堂在线视频 | 狠狠的日日 | 国产999久久久 | 国内久久精品视频 | 亚洲精品久久久蜜臀下载官网 | 97免费视频在线播放 | 丁香六月色 | 97理论片| 韩日电影在线 | 日本三级在线观看中文字 | 成人久久久久久久久久 | 免费看一级黄色 | 亚洲日本成人网 | 国产一区 在线播放 | 麻豆极品 | 成人动态视频 | 久久久精品国产一区二区三区 | 久久一级片 | 91在线入口 | 激情婷婷亚洲 | 狠狠地操 | 91九色性视频 | 97精品在线视频 | 超碰在线最新 | 国产高h视频 | 国产精彩视频一区 | 91精品国产九九九久久久亚洲 | 久久久久久网址 | 免费看片亚洲 | 免费在线观看午夜视频 | 亚洲午夜av电影 | 欧美久久久久久久久久 | 日韩大片在线免费观看 | 亚洲视频电影在线 | 亚洲区色 | 在线观看亚洲 | 91成人免费在线 | 99中文字幕 | 久久好看免费视频 | 在线视频精品 | av一级一片 | 国产精品视频在线观看 | 偷拍精品一区二区三区 | 美女中文字幕 | 精品亚洲视频在线 | 97精品国产97久久久久久春色 | 免费三级影片 | 日韩精品久久久 | 美女久久久久久久 | 在线色视频小说 | 成人国产亚洲 | 伊人干综合 | 亚洲激情六月 | 久久精品免视看 | 久草资源在线观看 | 91激情在线视频 | 日韩欧美在线一区二区 | 久久精品视频99 | 手机av片| 不卡的av在线播放 | 成人一级免费视频 | 国产不卡高清 | 碰超在线97人人 | 日韩丝袜在线 | 成人性生爱a∨ | 特级毛片在线观看 | 99在线热播精品免费 | www久久国产 | 人人爽人人爽人人片av | 手机看片99 | 国偷自产中文字幕亚洲手机在线 | 国产成人免费观看 | 91色一区二区三区 | 久久亚洲影视 | 伊人五月天婷婷 | 美女搞黄国产视频网站 | 天天干,天天操,天天射 | 欧美性一级观看 | 久青草影院 | 黄色成年 | 超碰av在线播放 | 成人免费在线观看入口 | 福利久久| 欧美性黄网官网 | 日韩精品三区四区 | 蜜桃视频在线观看一区 | 色多多视频在线观看 | 91精品久久久久久综合五月天 | 在线亚洲天堂网 | 午夜黄色 | 国产亚洲久一区二区 | 伊人影院得得 | 在线观看视频黄色 | 日本护士撒尿xxxx18 | 亚洲资源 | 欧洲精品在线视频 | www.狠狠插.com | 97超碰在线资源 | 93久久精品日日躁夜夜躁欧美 | 天天操狠狠操夜夜操 | 69xxxx欧美 | 亚洲国产免费网站 | 一级黄色片在线免费看 | 免费在线黄网 | 特级毛片在线免费观看 | 日韩三级免费观看 | 久草视频免费播放 | av中文字幕亚洲 | 在线观看日韩精品 | 国产色婷婷在线 | 久久国产片 | 丁香六月天 | 欧美-第1页-屁屁影院 | 天天综合网 天天 | 欧美精彩视频在线观看 | 午夜国产成人 | 91在线看视频免费 | 夜夜狠狠| 日韩欧美电影网 | 九九热精品国产 | 亚洲综合一区二区精品导航 | 国内丰满少妇猛烈精品播放 | 69国产盗摄一区二区三区五区 | 免费在线观看黄网站 | 日日精品 | 亚洲精品中文字幕视频 | 久久一区二区三区超碰国产精品 | 五月婷婷一级片 | 99久久精品免费看国产 | 日本中文字幕免费观看 | 麻豆免费在线视频 | 成人在线视频你懂的 | 国产在线国偷精品产拍免费yy | 韩日av在线 | 国产一区在线免费观看 | 国产小视频你懂的 | 国产精品久久久久久a | 欧美va天堂va视频va在线 | 亚洲免费av在线 | 在线视频专区 | 婷婷5月激情5月 | 久久国产女人 | 综合五月 | 精品国产_亚洲人成在线 | 丁香六月天| 国产日韩精品在线观看 | 国产精品久久久区三区天天噜 | 男女全黄一级一级高潮免费看 | 69人人| 97视频中文字幕 | 亚洲一级片在线看 | 久久99国产精品免费网站 | 久久蜜臀一区二区三区av | 97成人资源| 福利在线看片 | 欧美在线视频一区二区 | 欧美大片在线观看一区 | 中文字幕888 | 日韩精品一区二区三区水蜜桃 | 国产精品久久久久9999吃药 | 国内免费久久久久久久久久久 | 奇米网777 | 久草热久草视频 | 久久久久草 | 国产日产高清dvd碟片 | 日韩a欧美 | 国产成人精品电影久久久 | 黄色精品久久久 | www成人精品 | 成人h视频在线播放 | www.色午夜 | 丝袜+亚洲+另类+欧美+变态 | 狠狠操综合网 | 午夜精品视频在线 | 欧美成年人在线观看 | 日韩,精品电影 | 日韩一区二区三区在线观看 | 午夜免费福利片 | 狠狠地操 | 色吧av色av | 色亚洲网 | 久久乱码卡一卡2卡三卡四 五月婷婷久 | 精品久久精品久久 | 91秒拍国产福利一区 | 免费黄色特级片 | 亚洲一区日韩 | 99爱精品在线 | 99久久婷婷国产一区二区三区 | 亚洲欧美视频一区二区三区 | 天天操天操 | 手机在线看永久av片免费 | 久久久电影网站 | 97视频免费在线 | 国产在线综合视频 | 天天操天天摸天天干 | 国产精品mm | 久久色视频| 国产免费二区 | 91精品国产91久久久久福利 | 国产在线a免费观看 | 99热这里只有精品在线观看 | 久久草草热国产精品直播 | 天天插综合 | 亚洲精品一区二区三区在线观看 | 欧美尹人 | 亚洲aaa毛片 | 久久福利综合 | 成人久久18免费 | 亚洲国产视频直播 | 久久刺激视频 | 国产精品久久久久久久久久久杏吧 | 中文字幕国产亚洲 | 久久成人麻豆午夜电影 | 亚洲欧美日韩在线看 | 亚洲精品玖玖玖av在线看 | 天天夜夜亚洲 | 久久热亚洲 | 一级黄色毛片 | 最近免费中文视频 | 精品一区二区三区久久 | 国产区在线看 | 最新中文字幕在线资源 | av电影中文 | 久久久久在线观看 | 久草综合在线观看 | 久久久久免费网站 | 欧美亚洲精品一区 | 欧美精品第一 | 99视频精品免费观看, | 草久视频在线观看 | 超碰激情在线 | 在线视频观看亚洲 | 91人人澡人人爽 | 毛片黄色一级 | 97国产在线播放 | 激情在线网址 | 91天堂影院| 亚洲天堂网在线视频观看 | 久久综合色综合88 | 九九日九九操 | 天天躁日日躁狠狠 | 欧美韩国日本在线观看 | 91视频3p | 日韩在线免费看 | 久久精品久久99精品久久 | 精品一区精品二区 | 成人av网站在线播放 | a黄色片 | 国产福利一区二区三区视频 | 91亚洲国产 | 中文字幕一区二区三区四区 | 欧美va天堂在线电影 | 狠狠狠狠狠色综合 | 国产精品毛片久久 | 中文字幕999 | 99久高清在线观看视频99精品热在线观看视频 | 国产乱视频 | av片免费播放| 天天色棕合合合合合合 | 午夜视频在线观看一区二区三区 | 亚洲成人免费观看 | 开心婷婷色 | 日韩高清在线一区二区三区 | 亚洲国产无 | 亚洲午夜小视频 | 五月导航 | 免费亚洲电影 | 久久精品一二三区 | 日韩免费视频 | 免费高清在线视频一区· | 激情五月亚洲 | 天天爱天天操 | 99操视频 | 最新av在线播放 | 国产高清视频在线 | 97看片| 亚洲精选国产 | 精品亚洲二区 | 国产成人三级一区二区在线观看一 | 国产精品免费观看视频 | 日本中出在线观看 | 五月激情五月激情 | 免费a网站 | 国产又粗又猛又黄视频 | 色人久久 | 在线观看av不卡 | 91视频在线免费观看 | 天天爽天天爽 | www.婷婷com | 91视频久久 | 超碰人在线 | 国产手机视频在线播放 | 日本中文字幕网址 | 成人福利在线观看 | 成年人黄色大片在线 | 中文字幕黄色av | 亚洲精品乱码久久久久久蜜桃91 | 亚洲精品91天天久久人人 | 亚洲精品短视频 | 国产黄网站在线观看 | 国产免费一区二区三区网站免费 | 亚洲精品tv | 天天插天天爽 | 久久视频在线 | 久久久久久久久久免费 | 丁香狠狠| 免费av网站观看 | 久久婷婷一区二区三区 | 成人a在线观看 | 精品资源在线 | 96av麻豆蜜桃一区二区 | 六月激情婷婷 | 97av影院 | 欧美亚洲精品一区 | 97热久久免费频精品99 | 九色激情网| 能在线看的av | 日韩亚洲欧美中文字幕 | 天天操天天干天天爽 | 精品国产乱码久久久久久浪潮 | 福利久久久 | 91九色蝌蚪视频在线 | 亚洲丁香日韩 | 五月天丁香视频 | 久久国产欧美日韩 | 激情文学丁香 | 久久综合导航 | 97看片| 久久亚洲综合色 | 日韩欧美视频免费看 | 00av视频 | 99精品免费视频 | 综合网av | www.香蕉视频在线观看 | 国产精品系列在线播放 | 久久夜色精品国产欧美乱 | 久久夜夜夜 | 国产v在线观看 | 999视频在线播放 | 精品一区 精品二区 | 日韩欧美精品在线观看视频 | 欧美国产日韩久久 | 亚洲激情 欧美激情 | 91精品一| 99九九热只有国产精品 | 日韩免费在线看 | 香蕉影院在线观看 | 亚洲人成在线电影 | 国产精品成人一区二区 | 亚洲精品国产精品国自产观看浪潮 | 国产无套精品久久久久久 | 国产一区成人 | 亚洲精品乱码久久久一二三 | 高清av免费看 | 96精品视频| 97品白浆高清久久久久久 | 国产午夜精品一区二区三区在线观看 | 精品黄色片 | 国产精品麻豆视频 | 亚洲永久精品在线 | 日本不卡123| 在线免费观看视频一区二区三区 | 91污污视频在线观看 | av品善网 | 久久久久成人精品免费播放动漫 | 欧美无极色 | 国产第页 | 日日夜夜骑 | 丰满少妇在线观看 | 99热99热 | 久久久久久久综合色一本 | 一级黄色片在线免费观看 | 在线成人欧美 | 国产一二三在线视频 | 五月天综合网站 | 国产日韩精品久久 | 九九涩涩av台湾日本热热 | 天天操天天干天天插 | 国产精品大片免费观看 | 日本公妇在线观看高清 | www免费黄色| 在线国产一区二区 | 国产一区二区在线免费观看 | 美女国内精品自产拍在线播放 | 国产欧美精品在线观看 | 超碰999 | 中文免费 | 可以免费看av | 黄色大片免费网站 | 97碰碰碰| 国产又粗又猛又爽 | 国产一级免费片 | 久久久久久久电影 | 国产成人免费在线观看 | 免费观看成人 | 免费观看福利视频 | 国产精品一区久久久久 | 人人干天天干 | 欧美性大战久久久久 | 69久久久久久久 | 日韩av一区二区在线影视 | 国产精品免费久久久久久久久久中文 | 亚洲视频在线观看 | 国产香蕉视频 | 国产精品999久久久 久产久精国产品 | 在线观看中文字幕一区二区 | 一级特黄aaa大片在线观看 | 欧美精品乱码久久久久 | 国产精品12345 | www.五月天激情 | 免费在线色电影 | 久久国产精品99久久久久 | 亚洲精品乱码久久久久久9色 | 一级片免费视频 | 日韩精品免费在线 | 欧美成人影音 | 日韩亚洲国产中文字幕 | 国产精品免费人成网站 | 精品嫩模福利一区二区蜜臀 | 黄色成人91 | 久久人人97超碰com | 国产视频精品网 | 精品国产一区二区三区在线观看 | www.五月婷| 色综合天天做天天爱 | 国产精品亚洲精品 | av黄色在线观看 | 国产精品美女久久久久久久网站 | av日韩在线网站 | 美女网站视频免费都是黄 | 婷婷色站| 一区二三国产 | 亚洲一级片av| 国产三级av在线 | 99在线观看视频网站 | 日本在线视频一区二区三区 | 国产麻豆精品一区二区 | 午夜少妇一区二区三区 | 99久久精品免费 | 在线观看精品一区 | 欧美日韩国产mv | 中文字幕韩在线第一页 | av在线等| 婷婷视频 | 中文字幕第一页在线播放 | 欧美污在线观看 | 91黄色在线观看 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 不卡av电影在线观看 | 激情丁香在线 | 婷婷综合网| 91色视频| 久久人人爽人人爽人人 | 久久精品99 | 久久1区 | 日韩欧美高清不卡 | 成人av网站在线播放 | 国产日韩中文字幕在线 | 国产精品成人久久久 | 中文字幕视频一区 | av电影免费 | 91av在线播放 | 日韩欧美在线免费 | 91完整版 | 在线国产专区 | 黄色大片入口 | 成人动漫精品一区二区 | 亚洲五月婷婷 | 国产精品视频地址 | 区一区二区三在线观看 | 六月色丁香 | 国产亚洲精品久久久久久移动网络 | 日韩美视频 | 波多野结衣电影一区二区 | 四虎在线观看视频 | 久久久久一区二区三区四区 | 在线观看中文av | 国产高清精 | 免费一级日韩欧美性大片 | 欧美99久久| 久久高清片 | 国产亚洲久一区二区 | 91私密视频 | 日韩精品免费一区 | 91女神的呻吟细腰翘臀美女 | 国产专区在线看 | 色天天久久 | 精品福利国产 | 国内精品久久久精品电影院 | 永久av免费在线观看 | 日韩在线视频一区二区三区 | av亚洲产国偷v产偷v自拍小说 | av免费看av | 成人亚洲综合 | 欧美伦理一区 | 日韩大片在线免费观看 | 24小时日本在线www免费的 | 一级片视频在线 | 成人免费观看在线视频 | 国产一区免费视频 | 国产精品精品久久久 | 国产999精品视频 | 超碰人人草 | 9999亚洲| 视频高清 | 日韩最新中文字幕 | 黄网站大全 | 国产美女免费 | 九九色在线观看 | 色综合色综合色综合 | 日韩激情视频在线观看 | 成人在线免费看视频 | 精品久久久久久一区二区里番 | 91少妇精拍在线播放 | 久久黄色网址 | 国产一区二区在线精品 | 久久久久久草 | 亚洲一级影院 | 欧美色精品天天在线观看视频 | 日韩中文字幕免费看 | 午夜视频免费 | 亚洲日本激情 | 国产精品www | 日韩高清在线一区二区三区 | 五月亚洲综合 | 日韩中文免费视频 | www.午夜 | 国产精品国产三级国产aⅴ入口 | 国产午夜精品一区二区三区四区 | 天天操天天添天天吹 | 五月婷婷六月丁香 | 婷婷精品在线视频 | 91插插插网站 | 国产区免费 | 99精品在线直播 | 在线观看视频 | 欧美精品天堂 | 久免费视频 | 久久国产精品99国产精 | 青春草视频 | 日韩欧美视频一区 | 九九交易行官网 | 免费国产一区二区视频 | 天天色天天干天天 | 性色av一区二区 | 黄网站色| 国产高清视频在线免费观看 | 亚洲成av片人久久久 | 亚洲午夜精品久久久久久久久久久久 | 精品国产乱码久久久久久浪潮 | 国产网红在线观看 | 国内精品亚洲 | 狠狠躁日日躁狂躁夜夜躁 | 美女性爽视频国产免费app | 97色资源| 国产理论在线 | 色99久久 | 黄色av一级 | 成人一级片在线观看 | 天天综合色天天综合 | 国产日韩欧美在线一区 | 免费视频久久久久久久 | 少妇按摩av | 婷婷丁香花 | 国产精品国产三级国产aⅴ入口 | 中文字幕在线观看完整 | 国产一区91 | 欧美高清成人 | 中文在线亚洲 | 中文在线中文a | 欧美精品一区在线 | 国内久久视频 | 蜜桃久久久 | 中文字幕第 | 狠狠色丁香久久综合网 | 国产日韩欧美网站 | 久久久高清视频 | 欧美高清视频不卡网 | av片子在线观看 | 美女av在线免费 | 有码中文字幕 | 丁香婷婷在线 | 97精品国产97久久久久久免费 | 久久66热这里只有精品 | 韩国一区二区在线观看 | 狂野欧美激情性xxxx | 久久久精品国产一区二区三区 | 天天干天天操天天操 | 欧美日韩免费一区 | 色窝资源 | 99精品成人| www久久久| 久久久91精品国产 | 亚洲成熟女人毛片在线 | 黄色毛片一级片 | 91麻豆视频 | 在线看福利av | 日本色小说视频 | 亚洲一级免费观看 | 亚洲精品国产综合久久 | www.久草视频 | 久久这里只有精品视频99 | 日韩美女黄色片 | 国产91免费看 | 九九九热 | 中文字幕123区 | 久久激情视频网 | 日本特黄一级片 | 亚洲欧美日韩国产一区二区 | 免费精品国产va自在自线 | 欧美日本在线视频 | 天天爱综合 | 日韩精品中文字幕有码 | 亚洲精品乱码久久久久久按摩 | 在线观看视频h | 久久久av电影 | 国产精品手机在线观看 | 午夜精品一区二区三区在线视频 | 国产中文欧美日韩在线 | 97精品国自产拍在线观看 | 欧美精品你懂的 | 欧美久久久久久久久中文字幕 | 久久96国产精品久久99软件 | 久久毛片视频 | 亚洲成a人片77777kkkk1在线观看 | 91精品对白一区国产伦 | 亚洲综合色站 | 久久精视频 | 亚洲一区二区三区miaa149 | 天天爽夜夜操 | 91精品在线视频观看 | 日韩在线一二三区 | 综合婷婷| a在线播放| 手机在线永久免费观看av片 | 色噜噜狠狠色综合中国 | 婷婷丁香花五月天 | 国产99久久久久久免费看 | 久久久国产精品麻豆 | 久久人人爽人人爽人人片 | 国产精品刺激对白麻豆99 | 97在线观视频免费观看 | 色婷婷av一区二 | 狠狠的日 | 四虎永久免费网站 | 美女国产 | 久久激情影院 | 精品在线一区二区 | 国产原创在线视频 | 麻豆视频观看 | 国产精品成人一区 | 国产91精品一区二区麻豆亚洲 | a在线观看视频 | 开心激情网五月天 | 99麻豆久久久国产精品免费 | 九九九九色 | 欧美日韩亚洲第一 | 国产高清中文字幕 | 美女视频黄的免费的 | 欧美一级片在线播放 | 三级av在线 | 黄色成人影视 | 麻豆视频大全 | 91在线日韩 | 亚洲午夜精品在线观看 | 国产精品mv| a级国产乱理论片在线观看 伊人宗合网 | 国产午夜三级一区二区三桃花影视 | 免费在线观看av片 | 日韩高清不卡在线 | 日韩在线字幕 | 亚洲国产中文字幕在线观看 | 免费v片 | 五月天狠狠操 | 99re久久资源最新地址 | 69久久久 | 成人免费网站视频 | 黄色毛片在线 | 久久国产视屏 | 蜜臀av性久久久久av蜜臀妖精 | 五月开心综合 | 久综合网| 黄色片软件网站 | 亚洲精品在线观看网站 | 嫩草伊人久久精品少妇av | 久久人人爽人人爽人人片av软件 | 激情婷婷在线 | 黄色影院在线免费观看 | 天天操偷偷干 | 久久久久久欧美二区电影网 | 欧美黑人xxxx猛性大交 | 高清色免费 | 黄视频网站大全 | 超碰最新网址 | 91看片一区二区三区 | 99成人免费视频 | 中文字幕免费观看全部电影 | 美女性爽视频国产免费app | 国产97在线视频 | 午夜av一区二区三区 | 久久精品国产精品亚洲精品 | 69国产精品成人在线播放 | 国产成视频在线观看 | 极品国产91在线网站 | 国产999在线观看 | 中文字幕资源网在线观看 | 欧美日本啪啪无遮挡网站 | 日韩亚洲精品电影 | 久久影视中文字幕 | 香蕉视频久久久 | 国产美女精彩久久 | 日韩免费在线观看视频 | 日韩久久精品一区二区三区下载 | 婷婷国产精品 | 五月婷网站 | 国产午夜在线 | 91精品一区国产高清在线gif | 91九色蝌蚪视频网站 | 国产精品一区二区在线观看 | 免费av黄色 | 日韩精品在线视频 | 国产精品99蜜臀久久不卡二区 | 欧美aa一级 | 色吊丝av中文字幕 | 中文字幕中文中文字幕 | 国产啊v在线观看 | 国产va饥渴难耐女保洁员在线观看 | 99免费在线观看 | 久久精久久精 | 99久久日韩精品视频免费在线观看 | 亚洲伦理中文字幕 | 99精品一级欧美片免费播放 | 91麻豆网站| 美女网站在线 | 精品国产一区二区三区免费 | 国产免费人成xvideos视频 | 欧美一区二区三区四区夜夜大片 | 日本xxxx.com | 三上悠亚一区二区在线观看 | 天天综合人人 | 亚洲黄色成人网 | av资源在线看 | 国产视频一区二区三区在线 | 日韩欧美国产成人 | 国产不卡精品 | 黄色视屏在线免费观看 | 亚洲成免费| 黄色网www| 成人影片免费 | 日韩黄色免费看 | 国产精品一区二区电影 | 中文永久免费观看 | 国产馆在线播放 | 国产一区二区不卡视频 | 亚洲成年人免费网站 | 精品99久久久久久 | 国产精品中文字幕在线观看 | 丁香综合激情 | 手机色在线 | 热99在线视频 | 婷五月激情 | 亚洲视频综合在线 | 亚洲电影影音先锋 | 精品久久久久亚洲 | 激情自拍av | 人人超碰人人 | 免费看一级黄色 | 久久久久久久久久久成人 | 久久久久国产成人精品亚洲午夜 | 国产青青青 | 超碰在线国产 | 国产va饥渴难耐女保洁员在线观看 | 久久系列 | 亚洲一级电影视频 | 九九综合久久 | 久久精品视频网址 | 日韩av网页 | 精品在线小视频 | 狠狠色丁香婷婷综合视频 | 91成熟丰满女人少妇 | 91在线精品秘密一区二区 | 国产精品毛片久久蜜 | 国产女v资源在线观看 | 国产精品久久久久久模特 | 麻豆免费精品视频 | 亚洲精品动漫成人3d无尽在线 | 国产99久久久久 | 在线观看免费福利 | 国产片免费在线观看视频 | 日韩sese | 欧美精品一区二区三区四区在线 | 成年人视频在线免费播放 | 一级c片| 欧美精品在线观看 | 日韩在线观看中文字幕 | av福利免费 | av官网在线 | 青青草国产精品视频 | 久久99热这里只有精品 | 高清av在线免费观看 | 国产在线精品国自产拍影院 | 97色在线观看免费视频 | 精品一区免费 | 亚洲精品视频网址 | 九九视频这里只有精品 | 久久激情视频 | 综合色影院 | 97超碰在线久草超碰在线观看 | 日韩欧美一区二区不卡 | 国产精品欧美日韩在线观看 | 91看片成人 | 亚洲女在线| 二区精品视频 | 国产一区二区三精品久久久无广告 | av高清网站在线观看 | 国产成人61精品免费看片 | 91av电影在线 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 久精品视频免费观看2 | 亚洲天天在线日亚洲洲精 | 久久久久久高潮国产精品视 | 国产视频在线观看免费 | 日韩三级免费观看 | 欧美另类xxx| www..com毛片 | 中文字幕 国产视频 | 国产精品久久久久久久久久不蜜月 | 国产亚洲综合精品 | 国产成人99av超碰超爽 | 天天做天天爱夜夜爽 | 精品国产乱码久久久久久浪潮 | 久久国产片 | 欧美另类xxxx | 麻豆国产精品视频 | 蜜桃av综合网 | 国产一区在线观看视频 | 欧美一级免费黄色片 | 97超碰中文 | 97人人艹| 国产精品视频全国免费观看 | 成人国产精品久久久春色 | 亚洲少妇影院 | 欧美成年人在线观看 | 午夜精品视频福利 | 91精品一区二区三区蜜桃 | 国产99在线 | 精品一区三区 | 亚洲成人av影片 | 欧美综合国产 | 欧美日韩中文国产 | 欧美成年人在线视频 | 在线观看视频你懂得 | 亚洲成人频道 | 亚洲成人精品国产 | 国产视频精选在线 | 日日干夜夜骑 | 亚洲综合色激情五月 | 欧美视频日韩视频 | 亚洲免费av一区二区 | 亚洲 欧洲 国产 日本 综合 | 三级黄色免费 | 久久精品2 | 超碰公开在线观看 | 天天射色综合 | 日韩一区二区三免费高清在线观看 | 国产精品毛片一区二区 | 在线播放国产精品 | 亚洲婷久久| 成人免费在线播放 | 日本福利视频在线 | 欧美久久影院 | 久久一级电影 | 青青草国产精品视频 | 久久精品国产一区 | 一区二区三区四区不卡 | 五月开心婷婷 | 日韩黄色在线观看 | 天天草网站| 伊人网站 | 91亚州| 三级黄色欧美 | 偷拍精偷拍精品欧洲亚洲网站 | 中文资源在线观看 | 中文字幕av日韩 | 97免费公开视频 | 日韩在线在线 | 久久96国产精品久久99漫画 | 欧美日韩在线免费视频 | 免费视频xnxx com | 日韩在线观看一区 | 欧美日韩成人 | 在线成人国产 | 激情综合网五月婷婷 | 色91在线视频 | 成年人免费看 | 国产视频一级 | 九九久久视频 | 97精品超碰一区二区三区 | 九九免费在线观看 | 亚洲日本一区二区在线 | 欧美日韩精品在线播放 | 91天天操 | 久久福利剧场 | 精品99免费 | 又黄又刺激 | 久久一线| 成人亚洲欧美 | 免费在线观看国产黄 | 天天拍天天爽 | 天天躁天天操 | ,午夜性刺激免费看视频 | 色综合中文字幕 | 国产成人精品综合久久久 | 人人插人人费 | 黄色a三级| 99视频导航| 青草视频免费观看 | 国产精品一区二区三区四 | 欧美精品久久久久久久久免 | 国产中文字幕av | 亚洲视频六区 | 中文字幕免费一区二区 | 日韩电影在线一区 | 久久久久亚洲精品国产 | 亚州黄色一级 | 免费电影一区二区三区 | 国产精品美女在线 | 91在线视频网址 | 成人免费在线观看电影 | 黄网站app在线观看免费视频 | 色综合久久久久久中文网 | 国产一区二区视频在线 | 欧美激情第一页xxx 午夜性福利 | 天天干夜夜 | 色妞久久福利网 | 久久不射电影院 | 亚洲国产手机在线 | 国产精品99久久久久的智能播放 | 婷婷午夜天| 日韩xxxxxxxxx| 国产手机视频在线播放 | 人人澡人人澡人人 | av免费电影在线观看 | 天天干天天干天天干 | 久久久久夜色 | 五月天伊人网 | 91亚色在线观看 | 免费看毛片在线 | 久久午夜色播影院免费高清 | 久久精品视频免费播放 | 一级片免费视频 | 国产精品美女久久久久久久久久久 | 成人a v视频 | 黄色亚洲精品 | 久久99久久99精品免费看小说 | 欧美国产日韩久久 | 亚洲精品国偷自产在线91正片 | 99国产精品免费网站 | av在线电影免费观看 | 国产一级免费视频 | 国产精品国产三级国产不产一地 | 99久久精品国产系列 | 在线精品亚洲一区二区 | 国产永久免费观看 | 精品在线播放 | av在线免费观看不卡 | 视频直播国产精品 | 亚洲精品无 | 日韩中文字幕在线观看 | 免费无遮挡动漫网站 | 精品美女久久久久久免费 | 人人爱人人射 | 久草久 | 你操综合 | 99热国产精品 |