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

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

在Java EE 7和WildFly中使用Bean验证来验证JAX-RS资源数据

發(fā)布時(shí)間:2023/12/3 java 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在Java EE 7和WildFly中使用Bean验证来验证JAX-RS资源数据 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

我過(guò)去已經(jīng)兩次接觸過(guò)這個(gè)主題。 首先,在我的文章《 在Java EE 6中將Bean驗(yàn)證與JAX-RS集成》中 ,介紹了甚至在Java EE平臺(tái)規(guī)范中未定義之前,如何在JBoss AS 7中將Bean驗(yàn)證與JAX-RS結(jié)合使用的方法。 后來(lái),在一篇為《 JAX Magazine 》撰寫(xiě)并隨后發(fā)表在《 JAXenter 》上的文章中,使用了帶有Glassfish 4服務(wù)器(第一臺(tái)經(jīng)過(guò)Java EE 7認(rèn)證的服務(wù)器)的Java EE 7中定義的新標(biāo)準(zhǔn)方式。
現(xiàn)在,以前稱(chēng)為JBoss Application Server的WildFly 8終于達(dá)到了最終版本,并加入了Java EE 7認(rèn)證的服務(wù)器俱樂(lè)部,現(xiàn)在該發(fā)表新文章了,重點(diǎn)介紹了這兩個(gè)應(yīng)用服務(wù)器GlassFish 4和WildFly之間的特性和差異。 8。

規(guī)格和API

Java EE 7是期待已久的Java EE 6的重大改進(jìn)。隨著Java EE的每個(gè)發(fā)行版,都添加了新功能并增強(qiáng)了現(xiàn)有規(guī)范。 Java EE 7以Java EE 6的成功為基礎(chǔ),并繼續(xù)致力于提高開(kāi)發(fā)人員的生產(chǎn)力。

JAX-RS是RESTful Web服務(wù)的Java API,是Java EE領(lǐng)域中發(fā)展最快的API之一。 當(dāng)然,這是由于基于REST的Web服務(wù)的大量采用以及使用這些服務(wù)的應(yīng)用程序數(shù)量的增加。

這篇文章將介紹配置REST端點(diǎn)以支持JavaScript客戶(hù)端以及處理驗(yàn)證異常以將本地化錯(cuò)誤消息發(fā)送給客戶(hù)端(除了HTTP錯(cuò)誤狀態(tài)代碼)所需的步驟。

源代碼

本文隨附的源代碼可在GitHub上找到 。

Bean驗(yàn)證簡(jiǎn)介

JavaBeans Validation( Bean驗(yàn)證 )是一種新的驗(yàn)證模型,可作為Java EE 6平臺(tái)的一部分使用。 約束條件支持Bean驗(yàn)證模型,該約束以注釋的形式出現(xiàn)在JavaBeans組件(例如托管Bean)的字段,方法或類(lèi)上。

javax.validation.constraints包中提供了一些內(nèi)置約束。 Java EE 7教程包含具有所有這些約束的列表。

Bean驗(yàn)證中的約束通過(guò)Java注釋表示:

public class Person {@NotNull@Size(min = 2, max = 50)private String name;// ... }

Bean驗(yàn)證和RESTful Web服務(wù)

JAX-RS為提取請(qǐng)求值并將其綁定到Java字段,屬性和參數(shù)(使用@HeaderParam , @QueryParam等注釋)提供了強(qiáng)大的支持。它還支持通過(guò)非注釋參數(shù)將請(qǐng)求實(shí)體主體綁定到Java對(duì)象(即,未使用任何JAX-RS批注進(jìn)行批注的參數(shù))。 但是,在JAX-RS 2.0之前,必須以編程方式對(duì)資源類(lèi)中的這些值進(jìn)行任何其他驗(yàn)證。

最新版本的JAX-RS 2.0提供了一種解決方案,使驗(yàn)證批注可以與JAX-RS批注結(jié)合使用。
以下示例顯示了如何使用@Pattern驗(yàn)證批注來(lái)驗(yàn)證路徑參數(shù):

@GET @Path("{id}") public Person getPerson(@PathParam("id")@Pattern(regexp = "[0-9]+", message = "The id must be a valid number")String id) {return persons.get(id); }

除了驗(yàn)證單個(gè)字段外,您還可以使用@Valid批注驗(yàn)證整個(gè)實(shí)體。
例如,下面的方法接收一個(gè)Person對(duì)象并對(duì)其進(jìn)行驗(yàn)證:

@POST public Response validatePerson(@Valid Person person) {// ... }

國(guó)際化

在前面的示例中,我們使用了默認(rèn)或硬編碼的錯(cuò)誤消息,但這既是一種不好的做法,又一點(diǎn)也不靈活。 I18n是Bean驗(yàn)證規(guī)范的一部分,它使我們能夠使用資源屬性文件來(lái)指定自定義錯(cuò)誤消息。 默認(rèn)資源文件名稱(chēng)為ValidationMessages.properties并且必須包含屬性/值對(duì),例如:

person.id.notnull=The person id must not be null person.id.pattern=The person id must be a valid number person.name.size=The person name must be between {min} and {max} chars long

注意: {min}和{max}是指與消息相關(guān)聯(lián)的約束的屬性。

一旦定義,這些消息就可以注入到驗(yàn)證約束中,例如:

@POST @Path("create") @Consumes(MediaType.APPLICATION_FORM_URLENCODED) public Response createPerson(@FormParam("id")@NotNull(message = "{person.id.notnull}")@Pattern(regexp = "[0-9]+", message = "{person.id.pattern}")String id,@FormParam("name")@Size(min = 2, max = 50, message = "{person.name.size}")String name) {Person person = new Person();person.setId(Integer.valueOf(id));person.setName(name);persons.put(id, person);return Response.status(Response.Status.CREATED).entity(person).build(); }

要提供其他語(yǔ)言的翻譯,必須使用翻譯后的消息創(chuàng)建一個(gè)新文件ValidationMessages_XX.properties ,其中XX是所提供語(yǔ)言的代碼。

不幸的是,對(duì)于某些應(yīng)用程序服務(wù)器,默認(rèn)的Validator提供程序不基于特定的HTTP請(qǐng)求支持i18n。 他們不考慮Accept-Language HTTP標(biāo)頭,并且始終使用Locale.getDefault()提供的默認(rèn)Locale 。 為了能夠使用Accept-Language HTTP標(biāo)頭(映射到瀏覽器選項(xiàng)中配置的語(yǔ)言)來(lái)更改Locale ,您必須提供一個(gè)自定義實(shí)現(xiàn)。

自定義驗(yàn)證器提供程序

盡管WildFly 8正確使用Accept-Language HTTP標(biāo)頭來(lái)選擇正確的資源包,但其他服務(wù)器(例如GlassFish 4)卻不使用此標(biāo)頭。 因此,為了完整性和與GlassFish代碼的比較(在同一個(gè)GitHub項(xiàng)目下提供 ),我還為WildFly實(shí)現(xiàn)了自定義Validator提供程序。
如果要查看GlassFish示例,請(qǐng)?jiān)L問(wèn)JAXenter上的Bean驗(yàn)證與JAX-RS集成。

  • 將RESTEasy依賴(lài)項(xiàng)添加到Maven
  • WildFly使用RESTEasy ,這是JAX-RS規(guī)范的JBoss實(shí)現(xiàn)。
    驗(yàn)證程序提供程序和Exception Mapper必需具有RESTEasy依賴(lài)關(guān)系,本文稍后將對(duì)此進(jìn)行討論。 讓我們將其添加到Maven:

    <dependencyManagement><dependencies><dependency><groupId>org.jboss.resteasy</groupId><artifactId>resteasy-bom</artifactId><version>3.0.6.Final</version><scope>import</scope><type>pom</type></dependency></dependencies> </dependencyManagement><dependencies><dependency><groupId>org.jboss.resteasy</groupId><artifactId>resteasy-jaxrs</artifactId><scope>provided</scope></dependency><dependency><groupId>org.jboss.resteasy</groupId><artifactId>resteasy-validator-provider-11</artifactId><scope>provided</scope></dependency> </dependencies>

  • 創(chuàng)建一個(gè)ThreadLocal來(lái)存儲(chǔ)Locale從Accept-Language HTTP標(biāo)頭
  • ThreadLocal變量與普通變量不同,每個(gè)訪(fǎng)問(wèn)線(xiàn)程的線(xiàn)程都有其自己的,獨(dú)立初始化的變量副本。

    /*** {@link ThreadLocal} to store the Locale to be used in the message interpolator.*/ public class LocaleThreadLocal {public static final ThreadLocal<Locale> THREAD_LOCAL = new ThreadLocal<Locale>();public static Locale get() {return (THREAD_LOCAL.get() == null) ? Locale.getDefault() : THREAD_LOCAL.get();}public static void set(Locale locale) {THREAD_LOCAL.set(locale);}public static void unset() {THREAD_LOCAL.remove();} }

  • 創(chuàng)建一個(gè)請(qǐng)求過(guò)濾器以讀取Accept-Language HTTP標(biāo)頭
  • 請(qǐng)求過(guò)濾器負(fù)責(zé)讀取客戶(hù)端在Accept-Language HTTP標(biāo)頭中發(fā)送的第一語(yǔ)言并將Accept-Language Locale存儲(chǔ)在我們的ThreadLocal :

    /*** Checks whether the {@code Accept-Language} HTTP header exists and creates a {@link ThreadLocal} to store the* corresponding Locale.*/ @Provider public class AcceptLanguageRequestFilter implements ContainerRequestFilter {@Contextprivate HttpHeaders headers;@Overridepublic void filter(ContainerRequestContext requestContext) throws IOException {if (!headers.getAcceptableLanguages().isEmpty()) {LocaleThreadLocal.set(headers.getAcceptableLanguages().get(0));}} }

  • 創(chuàng)建自定義消息插值器以強(qiáng)制執(zhí)行特定的Locale
  • 接下來(lái),創(chuàng)建一個(gè)自定義消息插值器,以通過(guò)繞過(guò)或覆蓋默認(rèn)的Locale策略來(lái)強(qiáng)制執(zhí)行特定的Locale值:

    /*** Delegates to a MessageInterpolator implementation but enforces a given Locale.*/ public class LocaleSpecificMessageInterpolator implements MessageInterpolator {private final MessageInterpolator defaultInterpolator;public LocaleSpecificMessageInterpolator(MessageInterpolator interpolator) {this.defaultInterpolator = interpolator;}@Overridepublic String interpolate(String message, Context context) {return defaultInterpolator.interpolate(message, context, LocaleThreadLocal.get());}@Overridepublic String interpolate(String message, Context context, Locale locale) {return defaultInterpolator.interpolate(message, context, locale);} }

  • 配置驗(yàn)證器提供程序
  • RESTEasy通過(guò)查找實(shí)現(xiàn)ContextResolver<GeneralValidator>的提供程序來(lái)獲得Bean驗(yàn)證實(shí)現(xiàn)。
    要配置新的驗(yàn)證服務(wù)提供者以使用我們的自定義消息插值器,請(qǐng)?zhí)砑右韵聝?nèi)容:

    /*** Custom configuration of validation. This configuration can define custom:* <ul>* <li>MessageInterpolator - interpolates a given constraint violation message.</li>* <li>TraversableResolver - determines if a property can be accessed by the Bean Validation provider.</li>* <li>ConstraintValidatorFactory - instantiates a ConstraintValidator instance based off its class.* <li>ParameterNameProvider - provides names for method and constructor parameters.</li> ** </ul>*/ @Provider public class ValidationConfigurationContextResolver implements ContextResolver<GeneralValidator> {/*** Get a context of type {@code GeneralValidator} that is applicable to the supplied type.** @param type the class of object for which a context is desired* @return a context for the supplied type or {@code null} if a context for the supplied type is not available from* this provider.*/@Overridepublic GeneralValidator getContext(Class<?> type) {Configuration<?> config = Validation.byDefaultProvider().configure();BootstrapConfiguration bootstrapConfiguration = config.getBootstrapConfiguration();config.messageInterpolator(new LocaleSpecificMessageInterpolator(Validation.byDefaultProvider().configure().getDefaultMessageInterpolator()));return new GeneralValidatorImpl(config.buildValidatorFactory(),bootstrapConfiguration.isExecutableValidationEnabled(),bootstrapConfiguration.getDefaultValidatedExecutableTypes());} }
  • 映射異常

    默認(rèn)情況下,當(dāng)驗(yàn)證失敗時(shí),容器將引發(fā)異常,并將HTTP錯(cuò)誤返回給客戶(hù)端。

    Bean驗(yàn)證規(guī)范定義了小的異常層次結(jié)構(gòu)(它們都繼承自ValidationException ),可以在驗(yàn)證引擎初始化期間或(在我們的情況下更重要)在輸入/輸出值驗(yàn)證期間拋出異常( ConstraintViolationException )。 如果拋出的異常是ValidationException的子類(lèi)( ConstraintViolationException除外),則此異常將映射到狀態(tài)碼為500(內(nèi)部服務(wù)器錯(cuò)誤)的HTTP響應(yīng)。 另一方面,當(dāng)拋出ConstraintViolationException時(shí),將返回兩個(gè)不同的狀態(tài)代碼:

    • 500內(nèi)部服務(wù)器錯(cuò)誤)
      如果在驗(yàn)證方法返回類(lèi)型時(shí)引發(fā)了異常。
    • 400(錯(cuò)誤請(qǐng)求)
      除此以外。

    不幸的是,WildFly并沒(méi)有拋出ConstraintViolationException異常以獲取無(wú)效的輸入值, ResteasyViolationException拋出了ResteasyViolationException ,該異常實(shí)現(xiàn)了ValidationException接口。
    可以自定義此行為,以允許我們將錯(cuò)誤消息添加到返回給客戶(hù)端的響應(yīng)中:

    /*** {@link ExceptionMapper} for {@link ValidationException}.* <p>* Send a {@link ViolationReport} in {@link Response} in addition to HTTP 400/500 status code. Supported media types* are: {@code application/json} / {@code application/xml} (if appropriate provider is registered on server).* </p>** @see org.jboss.resteasy.api.validation.ResteasyViolationExceptionMapper The original WildFly class:* {@code org.jboss.resteasy.api.validation.ResteasyViolationExceptionMapper}*/ @Provider public class ValidationExceptionMapper implements ExceptionMapper<ValidationException> {@Overridepublic Response toResponse(ValidationException exception) {if (exception instanceof ConstraintDefinitionException) {return buildResponse(unwrapException(exception), MediaType.TEXT_PLAIN, Status.INTERNAL_SERVER_ERROR);}if (exception instanceof ConstraintDeclarationException) {return buildResponse(unwrapException(exception), MediaType.TEXT_PLAIN, Status.INTERNAL_SERVER_ERROR);}if (exception instanceof GroupDefinitionException) {return buildResponse(unwrapException(exception), MediaType.TEXT_PLAIN, Status.INTERNAL_SERVER_ERROR);}if (exception instanceof ResteasyViolationException) {ResteasyViolationException resteasyViolationException = ResteasyViolationException.class.cast(exception);Exception e = resteasyViolationException.getException();if (e != null) {return buildResponse(unwrapException(e), MediaType.TEXT_PLAIN, Status.INTERNAL_SERVER_ERROR);} else if (resteasyViolationException.getReturnValueViolations().size() == 0) {return buildViolationReportResponse(resteasyViolationException, Status.BAD_REQUEST);} else {return buildViolationReportResponse(resteasyViolationException, Status.INTERNAL_SERVER_ERROR);}}return buildResponse(unwrapException(exception), MediaType.TEXT_PLAIN, Status.INTERNAL_SERVER_ERROR);}protected Response buildResponse(Object entity, String mediaType, Status status) {ResponseBuilder builder = Response.status(status).entity(entity);builder.type(MediaType.TEXT_PLAIN);builder.header(Validation.VALIDATION_HEADER, "true");return builder.build();}protected Response buildViolationReportResponse(ResteasyViolationException exception, Status status) {ResponseBuilder builder = Response.status(status);builder.header(Validation.VALIDATION_HEADER, "true");// Check standard media types.MediaType mediaType = getAcceptMediaType(exception.getAccept());if (mediaType != null) {builder.type(mediaType);builder.entity(new ViolationReport(exception));return builder.build();}// Default media type.builder.type(MediaType.TEXT_PLAIN);builder.entity(exception.toString());return builder.build();}protected String unwrapException(Throwable t) {StringBuffer sb = new StringBuffer();doUnwrapException(sb, t);return sb.toString();}private void doUnwrapException(StringBuffer sb, Throwable t) {if (t == null) {return;}sb.append(t.toString());if (t.getCause() != null && t != t.getCause()) {sb.append('[');doUnwrapException(sb, t.getCause());sb.append(']');}}private MediaType getAcceptMediaType(List<MediaType> accept) {Iterator<MediaType> it = accept.iterator();while (it.hasNext()) {MediaType mt = it.next();/** application/xml media type causes an exception:* org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure: Could not find MessageBodyWriter for response* object of type: org.jboss.resteasy.api.validation.ViolationReport of media type: application/xml*//*if (MediaType.APPLICATION_XML_TYPE.getType().equals(mt.getType())&& MediaType.APPLICATION_XML_TYPE.getSubtype().equals(mt.getSubtype())) {return MediaType.APPLICATION_XML_TYPE;}*/if (MediaType.APPLICATION_JSON_TYPE.getType().equals(mt.getType())&& MediaType.APPLICATION_JSON_TYPE.getSubtype().equals(mt.getSubtype())) {return MediaType.APPLICATION_JSON_TYPE;}}return null;} }

    上面的示例是ExceptionMapper接口的實(shí)現(xiàn),該接口映射ValidationException類(lèi)型的異常。 驗(yàn)證失敗時(shí),Validator實(shí)現(xiàn)將引發(fā)此異常。 如果該異常是ResteasyViolationException的實(shí)例, ResteasyViolationException除了HTTP 400/500狀態(tài)代碼外,我們ResteasyViolationException在響應(yīng)中發(fā)送ViolationReport 。 這樣可以確保客戶(hù)端收到格式化的響應(yīng),而不僅僅是從資源傳播的異常。

    產(chǎn)生的輸出類(lèi)似于以下內(nèi)容(JSON格式):

    {"exception": null,"fieldViolations": [],"propertyViolations": [],"classViolations": [],"parameterViolations": [{"constraintType": "PARAMETER","path": "getPerson.id","message": "The id must be a valid number","value": "test"}],"returnValueViolations": [] }

    運(yùn)行和測(cè)試

    要運(yùn)行本文使用的應(yīng)用程序,請(qǐng)使用Maven構(gòu)建項(xiàng)目,將其部署到WildFly 8應(yīng)用程序服務(wù)器中,然后將瀏覽器指向http:// localhost:8080 / jaxrs-beanvalidation-javaee7 / 。

    另外,您也可以運(yùn)行在類(lèi)中的測(cè)試PersonsIT其內(nèi)置的Arquillian和JUnit的 。 Arquillian將自動(dòng)啟動(dòng)嵌入式WildFly 8容器,因此請(qǐng)確保您沒(méi)有在同一端口上運(yùn)行其他服務(wù)器。

    建議和改進(jìn)

  • 為了實(shí)現(xiàn)自定義的驗(yàn)證程序提供程序,我們依賴(lài)于應(yīng)用程序服務(wù)器代碼。 在GlassFish 4上,需要實(shí)現(xiàn)ContextResolver ContextResolver<ValidationConfig> ,而在WildFly 8上,我們需要實(shí)現(xiàn)ContextResolver<GeneralValidator> 。 為什么不在Java EE 7規(guī)范中定義ValidationConfig和GeneralValidator必須實(shí)現(xiàn)的接口,而不是依賴(lài)于應(yīng)用程序服務(wù)器特定的代碼?
  • 使WildFly 8 Embedded易于使用和通過(guò)Maven進(jìn)行配置。 當(dāng)前,要使Arquillian可以使用它,需要下載WildFly發(fā)行版(org.wildfly:wildfly-dist),將其解壓縮到target文件夾中,并在Surefire / Failsafe Maven插件上配置系統(tǒng)屬性: <systemPropertyVariables><java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager><jboss.home>${wildfly.home}</jboss.home><module.path>${wildfly.home}/modules</module.path> </systemPropertyVariables>

    而對(duì)于Glassfish,您只需要定義正確的依賴(lài)項(xiàng)(org.glassfish.main.extras:glassfish-embedded-all)。

  • 使RESTEasy成為WildFly Embedded的可傳遞依賴(lài)項(xiàng)。 僅通過(guò)定義provided WildFly Embedded依賴(lài)項(xiàng),在編譯時(shí)就可以使用所有WildFly模塊,這將是一個(gè)很好的生產(chǎn)力提升。
  • 當(dāng)前無(wú)法在Eclipse上使用選項(xiàng)Run As >> JUnit Test ,因?yàn)楸仨毚嬖诿麨閖bossHome的系統(tǒng)屬性。 Eclipse不會(huì)從Surefire / Failsafe配置中讀取此屬性。 有沒(méi)有解決方法?
  • 當(dāng)使用RESTEasy的ExceptionMapper<ValidationException>默認(rèn)實(shí)現(xiàn)時(shí),以application/xml媒體類(lèi)型請(qǐng)求數(shù)據(jù)并發(fā)生驗(yàn)證錯(cuò)誤,將引發(fā)以下異常: org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure:Could not find MessageBodyWriter for response object of type:org.jboss.resteasy.api.validation.ViolationReport of media type:application/xml

    這是RESTEasy錯(cuò)誤嗎?

  • 翻譯自: https://www.javacodegeeks.com/2014/04/validating-jax-rs-resource-data-with-bean-validation-in-java-ee-7-and-wildfly.html

    總結(jié)

    以上是生活随笔為你收集整理的在Java EE 7和WildFly中使用Bean验证来验证JAX-RS资源数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    又黄又刺激视频 | 精品视频不卡 | 国产美女视频免费 | 天天色成人 | 国产一级黄色av | 欧美日韩99 | 日本黄网站 | 亚洲色影爱久久精品 | 成人丝袜| 综合久久久久久久 | 日韩高清av在线 | 国产精品免费麻豆入口 | 欧美亚洲专区 | 国产精品久久久久久久久久久杏吧 | 美女免费视频网站 | 黄色成人91 | 亚洲另类交 | 99久久婷婷国产综合精品 | 午夜久操| 国产精品av在线免费观看 | 久久精品第一页 | 久久精品免视看 | 亚洲综合成人av | 在线观看韩国av | 97在线免费 | 国产精品一区二区在线免费观看 | 毛片网在线播放 | 国产午夜精品一区二区三区嫩草 | 美女国产免费 | 中文在线字幕免 | 亚洲免费观看在线视频 | 香蕉影视在线观看 | 日韩免费观看一区二区 | 中文字幕麻豆 | 在线观看精品黄av片免费 | 国产精品久久久久久久婷婷 | 日本中文一级片 | 久久国产成人午夜av影院潦草 | 999久久久欧美日韩黑人 | 精品国产激情 | 久久午夜影院 | 国产人免费人成免费视频 | 午夜美女福利直播 | 日韩特黄一级欧美毛片特黄 | 亚洲成aⅴ人片久久青草影院 | 久久综合福利 | 黄网站免费大全入口 | 久草在线久 | 国产精品男女啪啪 | 一区二区三区在线影院 | 日韩天天综合 | 激情大尺度视频 | 久久久麻豆精品一区二区 | 免费a v在线| 精品国产精品一区二区夜夜嗨 | 国产粉嫩在线观看 | 国产一级小视频 | 91成人小视频 | 日韩影片在线观看 | 91资源在线免费观看 | www激情com| 欧美日韩后 | 婷婷六月激情 | 中文字幕在线精品 | 丁香六月婷婷激情 | 九九九九热精品免费视频点播观看 | 久久资源在线 | 久久久久久国产精品999 | 99热9| 国产黄在线免费观看 | 欧美日韩在线精品 | 综合久久一本 | 欧美性另类 | 国产精品久久久久av | 日韩r级在线 | 五月天婷婷狠狠 | 亚洲午夜久久久影院 | 成人小视频在线 | 久久免费电影网 | 又黄又刺激视频 | 日韩欧美一区二区三区免费观看 | 五月激情婷婷丁香 | 国产精品欧美久久久久三级 | 麻豆视频一区二区 | .精品久久久麻豆国产精品 亚洲va欧美 | 久久久亚洲麻豆日韩精品一区三区 | 国产精品久久久久久一区二区 | 黄色国产精品 | 免费在线一区二区三区 | 久久99久久99免费视频 | 97偷拍视频| 天天插日日射 | 日韩久久久久久久久 | a黄色一级| 91网页版在线观看 | 日韩精品一区二区在线观看 | 国产又粗又长又硬免费视频 | 五月婷婷激情五月 | 日韩电影在线一区二区 | 夜夜夜精品| 精品一区电影 | 国产精品嫩草69影院 | 国产96在线视频 | 99久久婷婷国产 | 又紧又大又爽精品一区二区 | 免费69视频 | 欧美日韩高清国产 | 国产不卡在线视频 | 亚洲人成人99网站 | 国产精品丝袜在线 | 肉色欧美久久久久久久免费看 | 激情综合网在线观看 | 国产精品一区二区av日韩在线 | 国产免费成人av | av免费网 | 国产a级精品 | 欧美日韩精品网站 | 色婷婷综合久久久久中文字幕1 | 碰超在线 | 91日韩精品 | 干综合网| 最新av免费在线 | 中文字幕在线久一本久 | 日本一区二区高清不卡 | 在线免费观看视频你懂的 | 亚洲欧美日韩精品久久久 | 干干日日 | av理论电影| 久久综合九色综合久久久精品综合 | 日韩在线视频一区 | 日韩区在线观看 | 欧美色综合 | 成人毛片100免费观看 | 国产精品美女久久久久久 | 成人黄色在线播放 | 午夜视频久久久 | 国产99自拍 | 二区在线播放 | 亚洲国产中文在线观看 | 91九色porny蝌蚪主页 | 四虎免费在线观看 | 国产色妞影院wwwxxx | 亚洲天堂视频在线 | 亚洲精品美女在线观看播放 | 九九热在线免费观看 | 91视频在线看 | www黄免费| 99久久精品国产亚洲 | 日韩免费一区二区在线观看 | 天天综合日日夜夜 | 欧美一区二区在线看 | 麻豆视频在线免费观看 | a电影在线观看 | 九九在线高清精品视频 | 精品久久久久久亚洲综合网站 | 午夜色性片 | 美女很黄免费网站 | 五月婷婷,六月丁香 | 91女神的呻吟细腰翘臀美女 | 99国产视频 | 91九色porny在线 | 久久91久久久久麻豆精品 | 97超碰精品 | 91免费版在线 | 国产精品九九久久99视频 | 亚洲在线a | 91久久国产综合精品女同国语 | 一区二区三区高清 | 日本一区二区三区免费看 | 91在线产啪| 欧美久久电影 | 91看国产| av夜夜操 | 免费a视频| 一级全黄毛片 | 久久亚洲综合国产精品99麻豆的功能介绍 | 91在线最新 | 日本aa在线 | 国产3p视频 | 精品久久一区二区三区 | 在线亚洲人成电影网站色www | 91在线视频免费播放 | 在线91精品 | 日韩区欠美精品av视频 | 97影视| 亚洲精品在线视频观看 | 中文字幕在线观看视频一区 | 国产91在线 | 美洲 | 久热久草 | 亚洲韩国一区二区三区 | 天天操天天是 | 久久99在线| 高清中文字幕av | 国产精品免费久久久久久久久久中文 | 丁香婷婷激情五月 | 国产美女被啪进深处喷白浆视频 | 日韩av免费大片 | 四虎国产视频 | 三级黄色在线观看 | 久久五月婷婷丁香社区 | 99久久精品国产欧美主题曲 | 国产伦精品一区二区三区无广告 | 亚洲国产高清视频 | 91av资源网 | 麻豆视频在线 | 国产又粗又猛又色又黄视频 | 97av免费视频| 深爱激情婷婷网 | 亚洲国产黄色片 | 黄色a一级视频 | 中文字幕在线观看免费 | 成人av网址大全 | 中文字幕网站 | 欧美尹人 | 波多野结衣日韩 | 国产资源网站 | 久久网站最新地址 | 久久国内免费视频 | 91丨九色丨首页 | 精品一区二区免费 | 98精品国产自产在线观看 | 波多野结衣小视频 | 久久久久欠精品国产毛片国产毛生 | 欧美日本一区 | 深爱综合网 | www色网站 | 亚洲天堂精品视频在线观看 | 久久这里| 免费久久片 | 欧美久久久久久久久久久 | 中文字幕在线字幕中文 | 久久av网址| 91亚洲精品在线 | 丁香六月久久综合狠狠色 | 在线看毛片网站 | 国产成人在线播放 | 麻豆国产精品一区二区三区 | avav片| 91香蕉视频好色先生 | 精品一区二区免费在线观看 | 精品一二三区 | 国产精品99久久久久久人免费 | 亚洲色综合 | 国产手机av在线 | 国产精品一区二区三区99 | 日韩欧美69 | 免费能看的黄色片 | 天天操天天色天天射 | 国产日韩欧美在线免费观看 | 99c视频在线 | 91精品国产麻豆国产自产影视 | 激情五月婷婷综合网 | 久久视频一区 | 亚洲最新在线视频 | av一级片网站 | 日韩av电影免费在线观看 | 在线免费观看视频一区 | 亚洲精品视频在线播放 | 免费看片成年人 | 国产视频观看 | 免费看成人片 | 欧美日本不卡 | 久久国产热 | 国产精品久久久久高潮 | 91精品国产99久久久久 | 一区二区三区四区五区在线 | 日韩欧美在线综合网 | 国产精品原创av片国产免费 | 五月天中文字幕mv在线 | 91最新网址| 欧美日韩国产一区二区三区在线观看 | 国产精品日韩久久久久 | 久久免费高清视频 | 中文字幕 国产视频 | 99在线观看视频 | 久草av在线播放 | 国产区免费在线 | 欧美在线视频精品 | 91激情视频在线观看 | 天天综合导航 | 免费亚洲成人 | 日韩激情视频在线 | 毛片久久久 | 日日爱影视 | 97超碰福利久久精品 | 久久久久国产精品厨房 | 国产精品久久精品 | 一级黄色免费 | 97av超碰 | 国产成人一区二区三区久久精品 | 亚洲天天 | 黄色免费视频在线观看 | 99爱在线观看| 中文字幕在线影院 | 国产精品入口a级 | 丝袜美腿av | 69久久99精品久久久久婷婷 | 亚洲 精品在线视频 | 不卡的av在线播放 | 97超碰总站 | 欧美一级免费片 | 日韩在线免费看 | 麻豆视频免费看 | 色夜视频 | 成人免费视频免费观看 | 97超碰.com| 91久久爱热色涩涩 | www视频免费在线观看 | 伊人色**天天综合婷婷 | 精品欧美小视频在线观看 | 色网站免费在线观看 | 精品人人爽 | 国产第一页福利影院 | 96国产精品 | 99在线观看 | 99久久久国产精品美女 | 久久高清av| 人人插人人做 | 9797在线看片亚洲精品 | 99精品视频免费看 | 欧美性生活一级片 | 人人艹视频 | 久久久久久久久久久久久久av | 中文av免费| 欧美成人中文字幕 | 天天草天天| 黄色免费在线看 | 亚洲专区在线 | 日日夜夜狠狠干 | 日韩在线视频一区 | av九九| 国产女教师精品久久av | 国产成人在线精品 | 久久久www成人免费精品张筱雨 | 色综合天天| www.国产在线 | 久久综合五月婷婷 | 国产精品美女www爽爽爽视频 | 日韩在线观看第一页 | 中文字幕在线日 | 久久a v电影 | 亚洲国内精品在线 | 人人干,人人爽 | 午夜国产影院 | 亚洲精品88欧美一区二区 | 视频三区在线 | 草久久久久久久 | 国内外激情视频 | 国产黄在线看 | 免费在线观看成人av | 国产精品99蜜臀久久不卡二区 | 久久成人在线视频 | 日韩高清一区在线 | 久久的色 | 在线免费视频你懂的 | 亚洲一区在线看 | 2019免费中文字幕 | 97超碰超碰久久福利超碰 | 国产精品亚州 | 国产精品欧美日韩 | 欧美做受高潮1 | 伊人色**天天综合婷婷 | 久久视频在线 | 在线观看视频中文字幕 | 国产日韩精品一区二区 | 免费精品在线 | 激情综合婷婷 | 日韩av免费在线看 | 中文字幕资源网 国产 | 在线播放亚洲 | www.久久久com | 天天色天天操综合网 | 久操操 | 九九精品久久久 | 综合色天天 | 国产日韩在线播放 | 亚洲精品视频播放 | 日韩网站中文字幕 | 91福利社区在线观看 | av在线专区| 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 久久精品99视频 | 久久人人爽人人爽人人片av软件 | 国产黄色片久久久 | 操操操天天操 | 中文在线8新资源库 | 成人羞羞视频在线观看免费 | 综合影视| 超碰国产在线播放 | 日韩中文免费视频 | 精品一二三四五区 | 久久国产一区二区 | 97精品国产一二三产区 | 中文字幕在线观看你懂的 | 蜜臀av免费一区二区三区 | a极黄色片| 国产美女在线免费观看 | 国产中文字幕免费 | 激情网五月婷婷 | 在线国产精品一区 | 欧美日韩久久不卡 | 免费a网站 | 91精品啪在线观看国产 | 美女网站在线观看 | 最新国产在线观看 | 91片网| 中文字幕精品视频 | 五月天综合婷婷 | 日韩成人精品 | 黄色片网站免费 | 波多野结衣在线视频一区 | 91久久久久久国产精品 | 日本精品一区二区 | 91亚洲欧美 | 九九欧美 | 国产色网 | 69精品久久久 | 亚洲 欧美 综合 在线 精品 | 免费av福利| 免费网站看av片 | 97精品国产91久久久久久久 | 96久久久| 色综合 久久精品 | 在线观看网站黄 | 五月天电影免费在线观看一区 | 天天色天天色 | 国产va精品免费观看 | 亚洲精品中文在线观看 | 欧美日韩免费观看一区二区三区 | 午夜精品久久久久久久久久久久 | 亚洲精品免费在线播放 | 精品国产99 | av天天草| 九九精品在线观看 | 99精品久久久 | www.狠狠操.com | 欧美视屏一区二区 | 91亚洲精品乱码久久久久久蜜桃 | 欧美色图p | 中文字幕在线观看日本 | 精品久久一区二区三区 | 婷婷精品在线视频 | 国产精品高清免费在线观看 | 深夜国产福利 | 97在线精品视频 | 视频在线亚洲 | 亚洲国产精品小视频 | 91网址在线观看 | 日本中文一级片 | 91成人免费| 顶级bbw搡bbbb搡bbbb | 天天射夜夜爽 | 黄色91在线| 蜜臀av性久久久久av蜜臀三区 | 日韩一级电影在线观看 | 人人艹人人 | 日日摸日日爽 | 91免费网址| 日韩欧美国产成人 | 91亚洲成人 | 久久99精品久久只有精品 | 天天干天天做 | 天天综合色天天综合 | 婷婷日| 国产区在线看 | 国产精品久久久久久久久久三级 | 久久久私人影院 | 综合网婷婷 | 国内精品久久久久久久97牛牛 | 日韩欧美一区二区三区黑寡妇 | 久久久久99精品成人片三人毛片 | 国产亚洲精品日韩在线tv黄 | 亚洲国产精品成人精品 | 色爱区综合激月婷婷 | 97综合视频 | 91超碰在线播放 | 91少妇精拍在线播放 | 中文字幕一区二区三区久久 | 天天色天天射天天操 | 国产黄色网 | 久久精品中文字幕少妇 | 最近在线中文字幕 | 日韩理论片 | 91精品国产91久久久久 | 蜜桃av观看 | 欧美少妇xxx | 亚洲区精品 | 狠狠狠色丁香婷婷综合久久88 | 四虎www. | 亚洲三级在线免费观看 | 欧美精品一区在线发布 | 国产网站色 | 国产视频1区2区 | 丁香婷婷在线观看 | 91精品国产亚洲 | 久久九九国产视频 | 中文一区在线 | 久久久久福利视频 | 在线中文字幕一区二区 | 日韩最新在线视频 | 97在线视频免费播放 | 999视频精品 | 天堂av最新网址 | 91av看片 | 精品久久免费 | 日韩久久久久久久久久久久 | 久久精品国产免费看久久精品 | 亚洲国产无 | 成人a v视频 | 美女黄久久 | 黄色精品一区 | 青青河边草免费直播 | 精品欧美在线视频 | 日本韩国精品一区二区在线观看 | 亚洲精品综合一二三区在线观看 | 一区二区免费不卡在线 | 91亚色视频在线观看 | 国产精品久久久久久久久久新婚 | 国产黄| 九九免费在线观看视频 | 久久久久免费网 | 97操操| 国产成人精品一区二区三区在线 | 天天干夜夜干 | 久久的色 | 国产精品久久久久久999 | 黄色免费大片 | 国产一级视屏 | 久久国产区 | 国产无吗一区二区三区在线欢 | 国产精在线 | 亚洲国内精品在线 | 国产成人免费在线 | 久久婷婷丁香 | 免费视频网 | 国产精品久久久久久久久久久杏吧 | 欧美在线观看视频免费 | 久久99精品久久久久久秒播蜜臀 | 黄av在线 | 国产剧情av在线播放 | 丁香婷婷久久 | 亚洲最大成人网4388xx | 国产96av| 韩日精品中文字幕 | 狠狠色丁香久久婷婷综合丁香 | 在线观看国产麻豆 | 天天干天天在线 | 免费看成人a | 一区二区欧美激情 | 中文字幕高清 | 毛片的网址 | 99热在线精品观看 | 亚洲天天综合 | 精品伦理一区二区三区 | 中文字幕一区二区三区乱码不卡 | 五月av在线 | 日韩理论电影在线观看 | 国产精品99久久久久久久久 | 超碰在线人人艹 | 亚洲专区 国产精品 | 激情中文在线 | 欧美与欧洲交xxxx免费观看 | 久久有精品 | 亚洲激情五月 | 日韩视频一区二区在线 | 在线播放亚洲 | 亚洲精品乱码 | 免费精品在线观看 | 久亚洲| 中文字幕国产一区 | 国产精品第72页 | 国产专区免费 | 天天干天天干天天射 | 久久久久美女 | 国产精品亚洲精品 | 91九色视频在线 | 久草免费在线观看 | 日韩免费三级 | 色噜噜日韩精品欧美一区二区 | 国产一级91 | 极品国产91在线网站 | 韩国av免费观看 | 欧美一级片免费 | 黄色av一区二区 | 91福利视频一区 | 日韩高清免费在线观看 | av无限看 | 免费在线色电影 | 综合网天天 | 麻豆91在线观看 | 在线观看小视频 | 色婷婷骚婷婷 | 国产98色在线 | 日韩 | 91在线九色 | 91超级碰碰| 国产精品18videosex性欧美 | 国产福利91精品张津瑜 | 免费a网址 | 午夜资源站 | 三级av网 | 精品国产一区二区三区av性色 | 四虎影视成人永久免费观看亚洲欧美 | 免费看的国产视频网站 | 狠狠gao | 国产无遮挡又黄又爽在线观看 | 国产精品av免费观看 | 中文字幕美女免费在线 | 成片视频免费观看 | 久久夜色精品国产欧美一区麻豆 | 黄色片毛片 | 亚洲男人天堂2018 | 日韩精品视频一二三 | 又爽又黄又无遮挡网站动态图 | 国产精品精品国产婷婷这里av | 五月婷婷伊人网 | 国产馆在线播放 | 黄色91在线 | 狠狠干狠狠色 | 伊人五月天.com | 久久精品久久精品久久精品 | 国产专区视频在线 | 狠狠色综合网站久久久久久久 | 国产精品k频道 | 日韩视频免费 | 日日干美女 | 婷婷日韩 | 五月婷综合 | 中文字幕亚洲欧美日韩2019 | 最近最新中文字幕 | 波多野结衣久久资源 | 久久久精品在线观看 | 九九九电影免费看 | 波多野结衣一区二区 | 麻豆成人精品视频 | 在线a人片免费观看视频 | 97在线免费观看视频 | 日韩免费一区二区 | 亚洲一级电影 | 天天操天天干天天摸 | 在线视频久久 | 天天躁天天狠天天透 | 日本在线观看一区二区三区 | 精品国产视频一区 | 五月婷婷香蕉 | 在线观看爱爱视频 | 91麻豆免费视频 | 天天操天天玩 | 在线中文视频 | 91热爆在线观看 | 国产乱对白刺激视频在线观看女王 | 福利二区视频 | av爱干 | 五月婷婷开心 | 国产精品免费久久久 | 精品久久久久久久久亚洲 | 色综合久久久久久久 | 国产美女永久免费 | 欧美成人基地 | 精品视频免费久久久看 | 久久久精品欧美一区二区免费 | 国产成人a亚洲精品 | 欧美精品二区 | 日日日爽爽爽 | 五月婷婷一区二区三区 | 久久久久久久综合色一本 | 最近中文字幕mv免费高清在线 | 国产精品久久久久久久久软件 | 国产亚洲无 | 国产精品色婷婷视频 | 亚洲日韩欧美一区二区在线 | 国产成人在线综合 | 四虎在线视频免费观看 | 中文字幕资源网 国产 | 亚洲精品久久久久中文字幕m男 | 91精品国产三级a在线观看 | 看av免费| 999久久久精品视频 日韩高清www | 久久图 | 视频二区在线 | 久久国产乱 | 激情久久五月天 | 中文字幕精品三级久久久 | 亚洲一级免费电影 | 在线免费观看黄色大片 | 日韩欧美在线一区 | 国产精品亚 | 婷婷激情小说网 | 免费看亚洲毛片 | 久久九九国产精品 | 成人一级在线 | 2019中文字幕第一页 | 亚洲视频在线观看免费 | 在线观看视频你懂的 | 色的网站在线观看 | 狠狠操狠狠干天天操 | 亚州中文av | 日本中文字幕网址 | 天天综合网入口 | 最近中文字幕在线中文高清版 | wwwwww国产 | 六月丁香综合 | 夜夜操狠狠操 | av黄色免费在线观看 | 91成人免费视频 | 久久综合久久综合久久综合 | 成片免费观看视频 | 91视频国产免费 | www.综合网.com | 日韩欧美有码在线 | 操久在线 | 456免费视频| 99精品欧美一区二区 | 欧美国产亚洲精品久久久8v | 中文字幕在线久一本久 | 欧美老女人xx | 国产午夜免费视频 | 国产精品久久久区三区天天噜 | 日韩av在线不卡 | 欧美成人播放 | 黄色app网站在线观看 | 国产在线精品一区二区不卡了 | 韩日av在线 | 美女免费视频一区 | 五月激情av | 久久久久久久久免费 | 在线观看中文字幕网站 | 日日夜夜免费精品视频 | 精品欧美一区二区精品久久 | 91色视频 | 精品福利网站 | 国产日本在线观看 | 久久久三级视频 | 久草久热 | 免费中文字幕视频 | 婷婷午夜 | 色婷婷激情电影 | 狠狠色丁香久久婷婷综合五月 | www.97色.com | 色网站免费在线观看 | 国内成人精品2018免费看 | 激情五月婷婷综合网 | 欧美国产高清 | 韩日精品在线 | 91爱爱免费观看 | 一区二区精品国产 | 欧美国产日韩一区二区三区 | 国产资源在线观看 | 免费看片黄色 | 欧美狠狠色 | 天天综合久久 | 亚洲精选视频免费看 | 久久超碰免费 | 久久精品精品电影网 | 久久久久久国产精品免费 | 欧女人精69xxxxxx| 色婷婷亚洲婷婷 | 99精品99| 粉嫩av一区二区三区四区五区 | 日韩视频免费在线 | 午夜精品一区二区三区免费视频 | 国内精品在线看 | 欧美日韩天堂 | 激情在线网 | 日本视频久久久 | 国产精品成人在线 | 91成人在线免费观看 | 亚洲天堂精品 | 国产免费久久精品 | 四虎成人精品在永久免费 | 国产青青青 | 男女免费av | 久草视频在 | 国产小视频在线免费观看视频 | 超碰免费成人 | 91色九色| 激情视频免费在线 | 91亚洲精品久久久蜜桃 | 四虎成人精品永久免费av九九 | 最近免费中文字幕mv在线视频3 | 在线日韩精品视频 | 麻豆免费观看视频 | www国产亚洲精品久久网站 | 色多多污污在线观看 | 天天草综合网 | 色偷偷男人的天堂av | 亚洲在线激情 | a在线观看国产 | 免费福利小视频 | av在线网站大全 | 色97在线 | www.com久久 | 天天弄天天操 | 中文字幕中文字幕在线中文字幕三区 | 亚洲最大的av网站 | 四虎国产精品成人免费影视 | 欧美精品一二三 | 91大神精品视频在线观看 | 久久久久久久久久久电影 | 免费在线观看av片 | 国产看片网站 | 激情综合婷婷 | 日韩中文字幕免费在线观看 | 日韩色在线 | 国产精品久久久久一区二区 | 久草在线资源观看 | 激情网站免费观看 | 午夜精品一区二区三区在线 | 97免费在线观看视频 | 免费a视频在线观看 | 国产一区二区影院 | 亚洲资源在线 | 青青射 | 天天色天天操综合网 | 99精品欧美一区二区三区黑人哦 | 亚洲国产激情 | 亚洲日本va在线观看 | 欧美男同网站 | 97超碰.com | 国产精品毛片一区二区在线 | 在线中文字幕电影 | 在线观看日韩 | www..com黄色片| 日韩av视屏在线观看 | 国产精品理论片在线观看 | 福利网址在线观看 | 亚洲 中文 在线 精品 | av在线播放不卡 | 免费中文字幕视频 | 伊人成人久久 | 超碰久热| zzijzzij亚洲日本少妇熟睡 | 99综合影院在线 | 亚洲久草视频 | 精品国产伦一区二区三区 | 毛片无卡免费无播放器 | 日日激情| 激情五月婷婷激情 | 最新av网址在线观看 | 九月婷婷综合网 | 一区二区免费不卡在线 | 久草在线这里只有精品 | 亚洲欧美日韩精品一区二区 | 狠狠gao | 中文字幕日韩一区二区三区不卡 | 亚洲欧美精品在线 | 亚洲色综合 | 久久狠狠干 | 91天堂影院 | 国产成人综合在线观看 | 韩日精品中文字幕 | 久久久精品视频网站 | 亚洲视频大全 | 在线91播放 | 日韩免费小视频 | 在线播放一区二区三区 | 亚洲91精品在线观看 | 伊人中文网| 国产首页 | av无限看| 四虎影视8848dvd | 国产成人99久久亚洲综合精品 | 一区二区av | 欧美少妇的秘密 | 一区二区三区中文字幕在线 | 久久久久久久久久久成人 | av网站手机在线观看 | 国产 在线观看 | 久久乱码卡一卡2卡三卡四 五月婷婷久 | 久草精品免费 | 亚洲国产欧美一区二区三区丁香婷 | 午夜精品福利影院 | 婷婷色站| 国产免费观看视频 | 91免费视频黄| 日韩黄色一区 | 国产香蕉av| 亚洲国产手机在线 | 在线日本看片免费人成视久网 | 成人三级网站在线观看 | www.五月婷 | av高清在线观看 | 在线 高清 中文字幕 | 2021久久 | 日韩黄色在线电影 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 亚洲精品国偷拍自产在线观看 | 国产一区免费在线观看 | 精品一区在线看 | 在线观看中文字幕亚洲 | 国内精品久久久久久中文字幕 | 色综合久久99 | 亚洲天堂va | 在线观看视频一区二区三区 | 日韩精品免费一线在线观看 | 国产在线毛片 | 91麻豆精品国产自产在线游戏 | 成人免费视频播放 | 久久男人中文字幕资源站 | 国产91探花| 国产人成免费视频 | 亚洲欧美激情插 | 中文亚洲欧美日韩 | 国产视频1区2区3区 久久夜视频 | 国产免费区 | 国产一区在线免费观看视频 | 在线 国产 亚洲 欧美 | 热久久视久久精品18亚洲精品 | 国产精品一区二区你懂的 | 91av在线国产 | 欧美色噜噜 | 久久综合精品一区 | 欧美日韩免费一区二区 | 中文在线免费一区三区 | 久艹视频在线观看 | 91香蕉视频黄色 | 狠狠网站| 欧美在线视频精品 | 99精品在线观看视频 | 一区二区三区四区五区在线 | 精品久久久99 | 97人人人人| 国产69精品久久99的直播节目 | 精品在线播放视频 | 亚洲精区二区三区四区麻豆 | 97超碰在线播放 | 日韩av成人免费看 | 91最新地址永久入口 | 91成人免费看片 | 片黄色毛片黄色毛片 | 美女黄色网在线播放 | 曰本免费av | 偷拍精偷拍精品欧洲亚洲网站 | 婷婷色在线播放 | 欧美日韩精品二区第二页 | 欧美不卡视频在线 | 片黄色毛片黄色毛片 | 日日干综合 | 亚洲二区精品 | 欧美成人免费在线 | 麻豆视传媒官网免费观看 | 日韩欧美在线观看一区二区三区 | 成人黄色av免费在线观看 | 亚洲在线不卡 | 天天插天天爽 | 久99视频| 黄色片视频在线观看 | 国产精品一区二区三区四 | 中文字幕在线观看日本 | 亚洲免费精品一区二区 | 欧美日韩国内在线 | 天天躁天天狠天天透 | 天天操天天干天天爱 | 亚洲黄色免费网站 | 天天综合天天做 | 久久综合色一综合色88 | 久久精品久久精品 | 免费国产亚洲视频 | 五月婷香| 免费a网 | 国产高清免费在线播放 | 欧美巨大荫蒂茸毛毛人妖 | 日韩一区二区三区高清免费看看 | 成 人 黄 色 视频免费播放 | 97色在线观看免费视频 | 国产少妇在线观看 | 国产精品麻豆免费版 | 久草在线手机观看 | 亚洲精品视频在线播放 | 高清一区二区三区av | 日韩欧美区 | 国产在线色站 | 国产在线欧美在线 | 欧美中文字幕久久 | 又黄又爽又色无遮挡免费 | 日韩一区二区免费在线观看 | 99国产在线 | 国产午夜精品理论片在线 | 成人91在线| 免费在线观看午夜视频 | 国产1区在线观看 | 四虎在线免费 | www色网站| 中文字幕专区高清在线观看 | 毛片的网址 | 国产精品久久久网站 | 久久99精品国产99久久6尤 | 夜夜躁日日躁狠狠久久av | 综合影视 | 综合色伊人 | 欧美高清成人 | 欧美成a人片在线观看久 | 狠狠操.com | 大型av综合网站 | 欧美日韩国产免费视频 | 亚洲高清视频在线观看免费 | 色婷婷导航 | 青青网视频 | 成人午夜电影在线观看 |