ASP.NET Core中统一响应体格式
2023-03-05 21:36 作者:kassel-ltmonster | 我要投稿

在常见的bs前后分离开发中,我们一般会统一返回的格式,这样更方便前端进行处理。
一、创建统一响应类
我们先创建一个统一返回的类,为了方便我们会提供两个静态方法(成功和失败)。
二、实现控制器方法结果包装
对控制器方法结果包装我们需要实现[IResultFilter]或者[IAsyncResultFilter],这两个筛选器可以很方便的操作控制器方法返回的结果,我们通过对不同结果的不同处理,然后实现结果包装。
三、在Program.cs中使用
四、支持额外信息的返回
还记得我们在UniformResponse中有一个Extra的属性吗?这个就是方便后面我们在不修改原本Data属性的格式下额外返回的一个东西,它将支持在整个请求中随时返回任意格式的数据,下面我们就来实现它。
1. 提供一个UniformResponseExtraHelper类
2. 在UniformResponseFilter中支持UniformResponseExtraHelper
3. 最后修改Program.cs