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

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

如何在?ASP.NET?Core?Web?API?中處理?Patch?請(qǐng)求

瀏覽:36日期:2022-06-14 15:06:01
目錄一、概述二、將 Keys 保存在 Input Model 中三、定義 ModelBinderFactory 和 ModelBinder四、在 ASP.NET Core 項(xiàng)目中替換 ModelBinderFactory五、定義 AutoMapper 的 TypeConverter六、模型映射七、測(cè)試源碼參考資料一、概述

PUT 和 PATCH 方法用于更新現(xiàn)有資源。 它們之間的區(qū)別是,PUT 會(huì)替換整個(gè)資源,而 PATCH 僅指定更改。

在 ASP.NET Core Web API 中,由于 C# 是一種靜態(tài)語(yǔ)言(dynamic 在此不表),當(dāng)我們定義了一個(gè)類(lèi)型用于接收 HTTP Patch 請(qǐng)求參數(shù)的時(shí)候,在 Action 中無(wú)法直接從實(shí)例中得知客戶(hù)端提供了哪些參數(shù)。

比如定義一個(gè)輸入模型和數(shù)據(jù)庫(kù)實(shí)體:

public class PersonInput{ public string? Name { get; set; } public int? Age { get; set; } public string? Gender { get; set; }}public class PersonEntity{ public string Name { get; set; } public int Age { get; set; } public string Gender { get; set; }}

再定義一個(gè)以 FromForm 形式接收參數(shù)的 Action:

[HttpPatch][Route('patch')]public ActionResult Patch([FromForm] PersonInput input){ // 測(cè)試代碼暫時(shí)將 AutoMapper 配置放在方法內(nèi)。 var config = new MapperConfiguration(cfg => {cfg.CreateMap<PersonInput, PersonEntity>()); }); var mapper = config.CreateMapper(); // entity 從數(shù)據(jù)庫(kù)讀取,這里僅演示。 var entity = new PersonEntity {Name = '姓名', // 可能會(huì)被改變Age = 18, // 可能會(huì)被改變Gender = '我可能會(huì)被改變', }; // 如果客戶(hù)端只輸入 Name 字段,entity 的 Age 和 Gender 將不能被正確映射或被置為 null。 mapper.Map(input, entity); return Ok();}curl --location --request PATCH 'http://localhost:5094/test/patch' \--form 'Name='foo''

如果客戶(hù)端只提供了 Name 而沒(méi)有其他參數(shù),從 HttpContext.Request.Form.Keys 可以得知這一點(diǎn)。如果不使用 AutoMapper,那么接下來(lái)是丑陋的判斷:

var keys = _httpContextAccessor.HttpContext.Request.Form.Keys;if(keys.Contains('Name')){ // 更新 Name(這里忽略合法性判斷) entity.Name = input.Name!;}if (keys.Contains('Age')){ // 更新 Age(這里忽略合法性判斷) entity.Age = input.Age!;}// ...

本文提供一種方式來(lái)簡(jiǎn)化這個(gè)步驟。

二、將 Keys 保存在 Input Model 中

定義一個(gè)名為 PatchInput 的類(lèi):

public abstract class PatchInput{ [BindNever] public ICollection<string>? PatchKeys { get; set; }}

PatchKeys 屬性不由客戶(hù)端提供,不參與默認(rèn)綁定。

PersonInput 繼承自 PatchInput:

public class PersonInput : PatchInput{ public string? Name { get; set; } public int? Age { get; set; } public string? Gender { get; set; }}三、定義 ModelBinderFactory 和 ModelBinderpublic class PatchModelBinder : IModelBinder{ private readonly IModelBinder _internalModelBinder; public PatchModelBinder(IModelBinder internalModelBinder) {_internalModelBinder = internalModelBinder; } public async Task BindModelAsync(ModelBindingContext bindingContext) {await _internalModelBinder.BindModelAsync(bindingContext);if (bindingContext.Model is PatchInput model){ // 將 Form 中的 Keys 保存在 PatchKeys 中 model.PatchKeys = bindingContext.HttpContext.Request.Form.Keys;} }}public class PatchModelBinderFactory : IModelBinderFactory{ private ModelBinderFactory _modelBinderFactory; public PatchModelBinderFactory(IModelMetadataProvider metadataProvider,IOptions<MvcOptions> options,IServiceProvider serviceProvider) {_modelBinderFactory = new ModelBinderFactory(metadataProvider, options, serviceProvider); } public IModelBinder CreateBinder(ModelBinderFactoryContext context) {var modelBinder = _modelBinderFactory.CreateBinder(context);// ComplexObjectModelBinder 是 internal 類(lèi)if (typeof(PatchInput).IsAssignableFrom(context.Metadata.ModelType) && modelBinder.GetType().ToString().EndsWith('ComplexObjectModelBinder')){ modelBinder = new PatchModelBinder(modelBinder);}return modelBinder; }}四、在 ASP.NET Core 項(xiàng)目中替換 ModelBinderFactoryvar builder = WebApplication.CreateBuilder(args);// Add services to the container.builder.Services.AddPatchMapper();

AddPatchMapper 是一個(gè)簡(jiǎn)單的擴(kuò)展方法:

public static class PatchMapperExtensions{ public static IServiceCollection AddPatchMapper(this IServiceCollection services) {services.Replace(ServiceDescriptor.Singleton<IModelBinderFactory, PatchModelBinderFactory>());return services; }}

到目前為止,在 Action 中已經(jīng)能獲取到請(qǐng)求的 Key 了。

[HttpPatch][Route('patch')]public ActionResult Patch([FromForm] PersonInput input){ // 不需要手工給 input.PatchKeys 賦值。 return Ok();}

PatchKeys 的作用是利用 AutoMapper。

五、定義 AutoMapper 的 TypeConverterpublic class PatchConverter<T> : ITypeConverter<PatchInput, T> where T : new(){ /// <inheritdoc /> public T Convert(PatchInput source, T destination, ResolutionContext context) {destination ??= new T();var sourceType = source.GetType();var destinationType = typeof(T);foreach (var key in source.PatchKeys ?? Enumerable.Empty<string>()){ var sourcePropertyInfo = sourceType.GetProperty(key, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance); if (sourcePropertyInfo != null) {var destinationPropertyInfo = destinationType.GetProperty(key, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance);if (destinationPropertyInfo != null){ var sourceValue = sourcePropertyInfo.GetValue(source); destinationPropertyInfo.SetValue(destination, sourceValue);} }}return destination; }}

上述代碼可用其他手段來(lái)代替反射。

六、模型映射[HttpPatch][Route('patch')]public ActionResult Patch([FromForm] PersonInput input){ // 1. 目前僅支持 `FromForm`,即 `x-www-form_urlencoded` 和 `form-data`;暫不支持 `FromBody` 如 `raw` 等。 // 2. 使用 ModelBinderFractory 創(chuàng)建 ModelBinder 而不是 ModelBinderProvider 以便于未來(lái)支持更多的輸入格式。 // 3. 目前還沒(méi)有支持多級(jí)結(jié)構(gòu)。 // 4. 測(cè)試代碼暫時(shí)將 AutoMapper 配置放在方法內(nèi)。 var config = new MapperConfiguration(cfg => {cfg.CreateMap<PersonInput, PersonEntity>().ConvertUsing(new PatchConverter<PersonEntity>()); }); var mapper = config.CreateMapper(); // PersonEntity 有 3 個(gè)屬性,客戶(hù)端如果提供的參數(shù)參數(shù)不足 3 個(gè),在 Map 時(shí)未提供參數(shù)的屬性值不會(huì)被改變。 var entity = new PersonEntity {Name = '姓名',Age = 18,Gender = '如果客戶(hù)端沒(méi)有提供本參數(shù),那我的值不會(huì)被改變' }; mapper.Map(input, entity); return Ok();}七、測(cè)試curl --location --request PATCH 'http://localhost:5094/test/patch' \--form 'Name='foo''

curl --location --request PATCH 'http://localhost:5094/test/patch' \--header 'Content-Type: application/x-www-form-urlencoded' \--data-urlencode 'Name=foo'源碼

Tubumu.PatchMapper

支持 FromForm,即 x-www-form_urlencoded 和 form-data。支持 FromBody 如 raw 等。支持多級(jí)結(jié)構(gòu)。參考資料

GraphQL.NET

如何在 ASP.NET Core Web API 中處理 JSON Patch 請(qǐng)求

到此這篇關(guān)于在 ASP.NET Core Web API 中處理 Patch 請(qǐng)求的文章就介紹到這了,更多相關(guān)ASP.NET Core Web API 處理 Patch 請(qǐng)求內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: ASP.NET
主站蜘蛛池模板: 69久久99精品久久久久婷婷 | 精品国产欧美一区二区三区成人 | 成人黄色一区 | 国产www网站 | 国产一级一级特黄女人精品毛片 | 中文字幕在线免费 | 精品一区二区久久久久久久网站 | 福利片一区二区 | 玖玖精品 | 亚洲a网| 国产高清一区 | 国产精品日韩 | 黄免费看 | 亚洲精品福利网站 | 日本久久精品视频 | 一区二区中文字幕 | 国产精品久久久久久久电影 | 欧美日韩免费在线 | 欧美日韩国产综合在线 | 欧美日韩一区二区在线 | 日韩视频在线免费观看 | 国产午夜精品久久 | 99在线观看 | 人人鲁人人莫一区二区三区 | 超碰激情 | 亚洲欧美电影 | 97人人做人人人难人人做 | 免费观看一级毛片 | 欧美日韩电影一区二区三区 | 懂色av一区二区三区在线播放 | 久久久久久久久久久精 | 曰本人一级毛片免费完整视频 | 日本三级做a全过程在线观看 | 日韩影院在线 | 色偷偷888欧美精品久久久 | 免费激情网站 | 亚洲国产精品成人 | aaa黄色片| 久久99这里只有精品 | 粉嫩高清一区二区三区 | 宅男lu666噜噜噜在线观看 | 四虎永久免费影院 | 成人免费视频网站 | 精品网站999www | 伊人免费视频 | 欧美日韩一级电影 | 日韩一区二区在线观看 | 亚洲精品色 | 91视频国内 | 夜夜天天操 | 精品无码久久久久久国产 | 久久久精品综合 | m豆传媒在线链接观看 | 国产综合精品一区二区三区 | 在线成人 | 精品国产鲁一鲁一区二区在线观看 | jlzzjlzz国产精品久久 | 在线看国产 | 日韩在线免费视频 | 免费福利网站 | 精品自拍视频 | 在线欧美日韩 | 国产精品视频yy9299一区 | 亚洲九九 | 日韩6699人妻熟女毛片 | 国产精品久久久久久久久久ktv | 免费毛片一区二区三区久久久 | 叶山小百合av一区二区 | 99精品热 | 黄色大片免费网站 | 国产精品污www一区二区三区 | 国产在线资源 | 国产精品美女久久久久久久久久久 | 操到爽 | 久久视频在线 | 日本精品视频在线观看 | 一级色视频 | 欧美日韩亚洲二区 | 一级人爱视频 | 国产精品99久久 | 国产美女自拍视频 | 国产成人不卡 | 久久久97| 欧美aaa视频 | 欧美白人做受xxxx视频 | 国产精品美女一区二区三区四区 | 激情欧美一区二区 | 亚州中文字幕 | 99精品免费视频 | 国产精品精品视频一区二区三区 | 国产在线一区二区三区 | 久久三级视频 | 五月婷婷丁香婷婷 | 亚洲无吗电影 | 99精品欧美一区二区三区综合在线 | 天堂va在线高清一区 | 亚洲一区二区三区四区五区中文 | 91麻豆精品国产91久久久久 | 色九九| 日日爱视频 | 99re在线| 91国在线高清视频 | 国产一区av在线 | 精品av| 亚洲成a| 日韩在线成人 | 国产日韩欧美一区二区 | 亚洲精品久久久久久一区二区 | 日本手机在线视频 | 亚洲三级在线 | 欧美一级二级三级视频 | 国产成人精品一区二区在线 | 日本福利网站 | 欧美日韩视频在线第一区 | 国产噜噜噜噜噜久久久久久久久 | 99久久婷婷国产综合精品电影 | 一片毛片 | 久久久精品日韩 | 亚洲一区精品视频 | 亚洲成人免费观看 | 久久精品色欧美aⅴ一区二区 | 欧美一区二区视频 | 国产精品久久久久久久久免费桃花 | 久久青 | 日韩精品视频在线 | 国产精品一二三区 | 亚洲一区av在线 | 一区二区日韩视频 | 精品91| 久久久高清 | 亚洲免费人成在线视频观看 | 国产成在线观看免费视频 | 久草青青 | 国产精品久久国产精品 | 国产成人精品免费 | 三级黄色片在线观看 | 欧美一区三区 | 日本国产一区二区 | 日韩亚洲 | 在线 亚洲 欧美 | 青楼18春一级毛片 | 一级黄色毛片a | 欧美精品一区二区三区一线天视频 | 天天久久| 男女羞羞视频在线观看 | 国产日韩欧美综合 | 国产一区日韩在线 | 中文字幕一区在线观看视频 | 久久午夜影院 | 国产精品久久久久不卡 | 亚洲精品久久久久久一区二区 | h亚洲视频| 久久这里有精品视频 | 久久精品在线视频 | 午夜免费| 国产免费一级特黄录像 | 网站av | 天堂精品一区二区三区 | 成人在线免费小视频 | 亚洲激情在线观看 | 国产激情精品视频 | 日本久久视频 | 免费成人在线观看视频 | 久久9国产偷伦 | 日韩一二区视频 | 99视频网| 久久免费国产 | 夜夜操av | 国产精品理论电影 | 美女午夜视频 | 国产片侵犯亲女视频播放 | 国产毛片在线 | 在线欧美日韩 | 少妇一区二区三区 | 精品三级三级三级三级三级 | aa级毛片毛片免费观看久 | 亚洲免费一区 | 91精品国产91久久久久久吃药 | 久久国产精品久久精品 | 高清一区二区 | 亚洲精品一二三区 | 在线观看日韩av | 国精产品一区一区三区免费完 | www.日韩.com| 男女羞羞网站 | 亚洲一区在线日韩在线深爱 | 亚洲国产视频一区 | 夜夜av| 成人精品网 | 国产精品乱码一区二区三区 | 97精品久久 | 免费久久99精品国产婷婷六月 | 成人在线亚洲 | 成人av播放 | 丁香久久 | 国产乱码精品一区二区三区忘忧草 | 日日骚av | 久操国产 | 日韩综合视频在线观看 | 日韩成人在线网站 | 91久久夜色精品国产网站 | 国产一级网站 | 激情久久久| 亚洲九九九 | 国产精品99久久久久久久vr | 黑人巨大精品欧美一区免费视频 | 7777久久| 久久精品欧美 | 亚洲精品福利在线观看 | 日韩精品一区二区三区在线 | 国产高清美女一级a毛片久久 | 国产亚洲欧美精品永久 | 国产目拍亚洲精品99久久精品 | 日本一本视频 | 免费黄色小视频 | 色综合久久久久 | 91精品国产综合久久久久久丝袜 | 久草成人 | 精品视频久久久 | 日本成人高清视频 | 91精品久久| 中文字幕一区在线观看视频 | 久草青青 | 欧美一级淫片免费视频黄 | 国产欧美亚洲精品 | 奇米色欧美一区二区三区 | 日韩在线视频精品 | 亚洲一区二区三区观看 | 91伦理片| 每日更新av | 天天操综合网 | 全免一级毛片 | 国产精品三级久久久久久电影 | 91成人一区 | 亚洲毛片在线观看 | 高清一区二区三区视频 | 亚洲高清视频在线观看 | 久久精品一 | 日日日日干干干干 | 成人小视频在线播放 | 亚洲一区二区三区免费观看 | 欧美久久视频 | 久久久久久这里只有精品 | 影音先锋中文字幕一区 | 成人做爰www免费看视频网站 | 91精品国产一区二区三区四区在线 | 日韩在线视频免费 | 欧美黄视频在线观看 | 欧美一级二级三级 | 午夜精品久久久久久久 | 天堂资源最新在线 | 久久综合av| 久久亚洲精品视频 | 久久久免费精品 | 伊人网在线免费观看 | 自拍偷拍精品 | 一级篇 | 亚洲精品在 | 国产精品毛片久久久久久 | 日韩国产欧美精品 | 天天插天天干 | 色综合激情 | 成人欧美日韩一区二区三区 | 在线涩涩| 成人 在线| 国产精品美女久久久久久久网站 | 毛片毛片毛片毛片毛片毛片 | 亚洲精品一区在线观看 | 日韩精品久久久久久 | 欧美午夜精品久久久久久浪潮 | 可以在线观看的黄色 | 欧美在线观看一区 | 中文字幕一区二区三区不卡 | 免费视频爱爱太爽了 | 国产一区二区视频在线播放 | 欧美性猛交一区二区三区精品 | 国产午夜精品视频 | 黄在线看 | 国产99久久 | 99热成人在线 | 毛片国产| 国产精品一区二区三区在线 | 久久精品欧美一区二区三区不卡 | 99视频在线看 | 国产传媒在线视频 | 四虎首页 | 精品一区二区三区不卡 | 污片在线免费看 | 亚洲毛片网站 | 在线精品一区 | 国产精品一区二区三区在线播放 | 欧美日本亚洲 | 国产激情一区二区三区 | 伊人青青草 | 亚洲综合第一页 | 国产欧美专区 | 二区影院 | 久久91精品国产 | 日韩精品久久久久久 | 日本黄色一级电影 | 欧美日韩激情 | 欧美全黄 | 国产免费一区二区三区最新不卡 | 国产成人精品免高潮在线观看 | 久久精品99 | 国产精品www | 国产成人精品亚洲777人妖 | 午夜精品久久久久久久久久久久久 | 成人国产精品视频 | 国产99999| 日本精品视频在线观看 | 日韩欧美二区 | 国产精品中文字幕在线观看 | 黄色片免费看 | 国产77777 | 亚洲精品一区二区三区麻豆 | 久久久久久久国产 | 国产激情视频网 | 免费观看羞羞视频网站 | 天天干天天爽 | 欧美精品一区二区三区中文字幕 | 在线观看91 | 国产精品久久久久久婷婷天堂 | 久久高清一区 | 暖暖成人免费视频 | 99久久日韩精品视频免费在线观看 | 亚洲不卡 | 国产精品福利午夜在线观看 | 日韩一区二区视频在线 | 欧美日韩国产一区二区三区 | 久久亚洲网| 日韩成人在线观看 | 久久国产精品免费一区二区三区 | 91免费看片 | 国产一区高清 | 鲁一鲁综合 | 国产图区| 五月天婷婷国产精品 | 亚洲午夜在线 | 日韩在线中文字幕 | 精品国产乱码久久久久久蜜臀 | 性欧美久久久 | 日韩视频在线免费观看 | 久久精品99 | 亚洲精品v日韩精品 | 99精品国自产在线 | 中文字幕第十二页 | 成人高清在线 | 黄色一级毛片在线观看 | 国产在线中文字幕 | 大乳videos巨大吃奶 | 一区二区三区国产免费 | 国产中文在线 | 黄色资源网站 | xnxx 日本19 | 国产成人一区 | 欧美一级一区 | 国产精品视频一二三区 | 欧美日韩国产中文 | 精品亚洲永久免费精品 | 日韩在线免费 | 国产日韩欧美一区二区 | 国产精品久久久久久亚洲调教 | 在线观看三区 | 91精品国产777在线观看 | 日韩中文字幕在线视频 | 国产精品久久久久久久久久免费 | 午夜影院操 | 日韩在线一区二区 | 一区二区av | 欧美国产伦久久久久久 | 亚洲 欧美 日韩在线 | 欧洲一级视频 | 黄视频在线播放 | 欧美一级日韩片 | 精品一区二区免费视频 | 太平公主一级艳史播放高清 | 亚洲男人天堂 | 亚洲欧美日韩在线 | 欧美在线不卡 | 国产精品一区二区在线观看 | 热久久这里只有精品 | 在线观看成人国产 | 欧美久久一区二区三区 | 国产精品久久久久久久久久免费 | 狠狠色狠狠色综合网 | 亚洲综合无码一区二区 | 在线看免费观看日本 | 久久综合久 | 精品无码久久久久久国产 | 黄色一级毛片 | 欧美精品入口蜜桃 | 91aiai| 亚洲在线视频 | 九色一区 | 日韩小视频 | 久久国产精品电影 | 成人免费福利视频 | 成人h视频在线观看 | 欧美激情第二页 | 91精品久久久久久久久久久久久久久 | 久久91久久久久麻豆精品 | 成人精品国产免费网站 | 日日爱夜夜爱 | 国内福利视频 | 国产一区二区三区在线 | 成人免费视频视频在线观看 免费 | 国产午夜精品视频 | 国产精品视频一区二区免费不卡 | 中文字幕在线观看网站 | 国产激情 | 国产精品国产三级国产a | 蜜桃视频在线观看www社区 | 日韩中出 | 精品国产不卡一区二区三区 | 羞羞视频免费观看网站 | 国产精品久久久久久久久免费桃花 | 亚洲欧美日韩在线 | 九九免费在线观看 | 在线看av网址 | 久久人爽| 精品日韩欧美一区二区三区在线播放 | 亚洲成人一 | av一区在线 | 97国产精品视频人人做人人爱 | 日韩有码在线播放 | 国产精品精品视频一区二区三区 | 久久久久中文字幕 | 亚洲精品久久久久午夜 | 亚洲国产精品久久 | 亚洲国产精品自拍 | 国产激情综合五月久久 | 一区二区三区日韩 | 亚洲视频777| 国产精品久久久av | 91香蕉视频在线观看 | 欧美日韩高清 | 精品亚洲一区二区 | 欧美日韩视频一区二区 | 一区二区三区国产 | 国产精品久久久久久久 | hsck成人网 | 成人自拍视频 | 国产中文字幕在线观看 | 日韩午夜在线 | 国产亚洲精品久久久久久久 | 亚洲欧美综合精品久久成人 | 亚洲免费视频网站 | 亚洲处破女| 亚洲精品永久免费 | 91久久国产综合久久 | 国内精品视频一区二区三区八戒 | 欧美区国产区 | 五月婷婷丁香在线 | 男女啪啪高清无遮挡 | 日日爱影视 | 国产精品亚洲欧美日韩一区在线 | 午夜精品久久久 | 欧美日韩在线视频一区二区 | 中文在线一区 | 成人av影视在线观看 | 国产免费观看一区二区三区 | 久久久久久久久久国产 | 国产精品久久久久久久岛一牛影视 | 国产中文字幕在线观看 | 国产精品伦理一区 | 最新国产在线 | 一级毛片电影 | 欧美综合一区二区三区 | 成人高清在线 | 电影k8一区二区三区久久 | 91视频播放 | 日本在线观看网站 | 日韩综合 | 成人在线观看网站 | 国产综合精品一区二区三区 | 久久久久久国产精品高清 | 亚洲午夜精品一区二区三区 | 91免费视频在线 | 精品久久久久国产 | 亚洲人成电影网 | 欧美a在线 | www.99精品 | 欧美一级一区 | 免费看国产一级特黄aaaa大片 | 成人免费看黄色 | 日本亚洲精品成人欧美一区 | 麻豆久久精品 | 欧美精品一区二区三区一线天视频 | 九九热精品视频 | 国产欧美综合一区二区三区 | 久久成人综合 | 日韩欧美国产精品一区二区三区 | 午夜看看 | 国产欧美日韩在线观看 | 日韩91| 天天插天天操天天干 | 国产精品日本一区二区不卡视频 | 亚洲精品久久久久avwww潮水 | 欧美日韩精品一区二区 | 天天干天天草 | 日韩免费观看视频 | 免费日韩精品 | 久久久精品国产 | 国产精品久久久久国产a级 91福利网站在线观看 | 久久毛片 | 日韩视频精品在线 | 爱爱视频网站 | 中文字幕在线视频一区 | 激情六月婷 | 色com| 中文字幕亚洲一区 | 免费国产一区二区 | 国产精品亚洲一区二区三区在线 | 久久精品视频在线播放 | 久久久成 | 精品国产福利 | 亚洲一级黄色 | 国产成人无遮挡在线视频 | 亚洲精品二区 | 午夜爽 | 亚洲国产成人精品女人久久久 | 日日干天天操 | 亚洲国产精品99久久久久久久久 | 亚洲一区久久 | 欧美日本一区 | 一道本一二三区 | 精品一区二区三区蜜桃 | 国产黄色av | 在线观看成人网 | 亚洲国产精品一区 | 免费看片国产 | 成人激情在线 | 精品免费视频 | 欧美日韩精品一区二区在线播放 | 日韩成人tv | 久久99精品久久久久婷婷暖91 | 国产传媒毛片精品视频第一次 | 国产偷录视频叫床高潮对白 | 亚洲人在线观看视频 | 中文字幕视频 | 日韩在线视频播放 | 久久久综合色 | 国产一级免费视频 | 涩久久| 成年人在线看 | 久久国产精品一区 | 欧美日韩在线看 | aa级毛片毛片免费观看久 | 日本中文字幕一区 | 国产激情在线观看视频 | 亚洲一区二区三区免费看 | 国产精品中文字幕在线观看 | 99re在线精品 | 亚洲aⅴ | 日韩精品免费视频 | 99精品久久久国产一区二区三 | 久久久久久久 | 黄网站免费在线 | 免费看毛片网 | 久久久久久久久国产精品 | 日韩资源在线 | 日韩色av | 久草久草 | 97伦理电影院| 国产精品久久久久久中文字 | 国产日韩精品一区二区 | 国产精品一区二区三区在线免费观看 | 国产九色视频 | 精品国产一区一区二区三亚瑟 | 1区在线| 人人澡人人射 | 国产一区二区三区久久久久久久久 | 国外成人在线视频网站 | 国产精品25p | 亚州精品天堂中文字幕 | 亚洲精品在线播放 | 精品久久久久一区二区国产 | 中文字幕第十二页 | 亚洲一区二区三区高清 | 欧美日本免费一区二区三区 | 欧美福利在线观看 | www.久久| 伊人婷婷 | 91啦| 久久涩| 精品国产一区二区三区久久久蜜月 | 毛片在线免费 | 6080yy精品一区二区三区 | 成人免费av | 国产黄色在线观看 | 日韩成人av在线 | 小草av| 亚洲免费成人 | 在线观看中文 | 久久综合av | 亚洲精品在| 日韩欧美国产精品 | 国产一区二区三区不卡在线观看 | 午夜电影网址 | 国产精品久久久久久久久 | 一级片福利 | 羞羞视频网站在线免费观看 | 久久99精品久久久久婷婷暖91 | 一区二区三区精品视频 | 日韩成人免费av | 日本网站在线免费观看 | 日韩中文字幕电影 | 日韩视频精品在线 | 视频一区二区三区中文字幕 | 青青草草 | 久久视频在线 | 国产精品日产欧美久久久久 | 国产成人精品一区二区三区网站观看 | 亚洲夜幕久久日韩精品一区 |