错误处理 中间件
app.UseExceptionHandler(c => c.Run(async context =>
{
var exception = context.Features
.Get<IExceptionHandlerPathFeature>()
.Error;
var response = new { error = exception.Message };
await context.Response.WriteAsJsonAsync(response);
}));
app.UseMvc();
EnsureSuccessStatusCode()
- 当不想以任何特定方式处理失败情况时,惯用用法是用
EnsureSuccessStatusCode()
简洁地验证请求是否成功。
- 当想快速制作客户端原型时,这尤其有用。
var response = await client.GetAsync(...);
try
{
response.EnsureSuccessStatusCode();
}
catch (HttpRequestException)
{
}
var response = await client.GetAsync(...);
if (response.IsSuccessStatusCode)
{
}
else
{
}