Asp.NetCoreWebAPI在客户端挂起时返回结果
创始人
2024-09-18 10:00:32
0

在Asp.Net Core Web API中,可以使用Task和async/await语法使返回结果异步化,避免客户端挂起。具体实现步骤如下:

  1. 将需要异步处理的方法改为异步方法,返回类型为Task

  2. 在Controller中调用异步方法时,使用await关键字等待异步操作完成并返回结果,同时在方法前标注async关键字

  3. 配置Web API以启用异步操作,可以在Startup类的ConfigureServices方法中添加以下代码:

services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2) .AddJsonOptions(options => { options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); options.SerializerSettings.Formatting = Formatting.Indented;
}) .ConfigureApiBehaviorOptions(options => { options.SuppressModelStateInvalidFilter = true; }) .AddMvcOptions(options => { options.Filters.Add(); options.Filters.Add(); }) .AddControllersAsServices() .AddFluentValidation(fv => { fv.RegisterValidatorsFromAssemblyContaining(); });

  1. 使用HttpClient请求Web API时,需要在发送请求前将HttpClient的默认最大响应时间更改为无限制,这样客户端才不会挂起,示例代码如下:

private HttpClient httpClient = new HttpClient();

public async Task GetDataAsync(string url) where T : class { httpClient.Timeout = TimeSpan.FromMilliseconds(-1); HttpResponseMessage response = await httpClient.GetAsync(url); string contentString = await response.Content.ReadAsStringAsync(); T result = JsonConvert.DeserializeObject(contentString); return result; }

相关内容

热门资讯

玩家必备攻略!德州透视hhpo... 玩家必备攻略!德州透视hhpoker,wpk俱乐部是做什么的,真是是真的有挂(有挂秘诀)所有人都在同...
9分钟了解!拱趴大菠萝有什么挂... 9分钟了解!拱趴大菠萝有什么挂,hhpoker免费辅助器,本来真的有挂(竟然有挂)9分钟了解!拱趴大...
每日必备!德州局透视,如何判断... 每日必备!德州局透视,如何判断wpk辅助软件的真假,真是存在有挂(有挂存在)1、下载好脚本下载之后点...
推荐十款!hhpoker智能辅... 推荐十款!hhpoker智能辅助插件,hhpoker免费透视脚本,好像是有挂(发现有挂)1、游戏颠覆...
普及知识!哈糖大菠萝有挂吗,a... 普及知识!哈糖大菠萝有挂吗,aa poker透视软件,好像真的有挂(有挂实锤)1、金币登录送、破产送...
我来教教你!wpk辅助插件,佛... 我来教教你!wpk辅助插件,佛手在线大菠萝辅助,本来存在有挂(有挂透视)运佛手在线大菠萝辅助辅助工具...
分辨真假!pokernow辅助... 分辨真假!pokernow辅助控制,wepoker好友助力码,一贯有挂(有挂分析)小薇(辅助器软件下...
最新技巧!fishpoker透... 最新技巧!fishpoker透视底牌,wpk透视辅助靠谱吗,总是是真的有挂(有挂秘笈)1、最新技巧!...
三分钟了解!wpk有作弊吗,有... 三分钟了解!wpk有作弊吗,有哪些免费的wpk作弊码,总是真的是有挂(有挂细节)在进入软件靠谱后,参...
带你了解!wpk私人局辅助是真... 带你了解!wpk私人局辅助是真的吗,sohoo辅助,总是真的是有挂(证实有挂)1、玩家可以在线上大神...