架构师_程序员_码农网

查看: 349|回复: 1

[资料] ASP.NET WebApi 使用 MessageHandlers 统一返回接口模型格式

[复制链接]
发表于 2020-10-28 13:29:28 | 显示全部楼层
场景:在前端调用后端 api 的时候,我们希望后端返回统一的 json 模型接口,不同接口返回的数据包裹在统一接口的 data 字段里面。

原来的做法是所有的接口设置返回相同的模型对象,这样虽然可以做到,但是有点啰嗦。

在 ASP.NET WebApi 中,一次完整的 HTTP 请求,流程图如下:

20190129103245831.jpg

我自己对 MessageHandlers 的理解就是 ASP.NET Core 里面的 Middleware 中间件。

例如:

原来返回 json 内容:

["value1","itsvse.com"]
我们希望返回如下格式:

{"success":true,"message":"ok","data":["value1","itsvse.com"]}
所有的接口返回模型都包含:success、message 等字段。

统一响应实体模型


新建 ApiHandler 对象,代码如下:

在 WebApiConfig  配置文件注册自定义的 MessageHandlers,代码如下:

使用默认新建项目里面的 ValuesController 控制器,修改如下:

尝试访问我们的 api 接口,效果图如下:

QQ截图20201028132839.jpg

(完)





上一篇:CentOS 8 图形界面和命令行切换
下一篇:基于 .NET Core 在 Linux 下的服务
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 6 天前 | 显示全部楼层
jQuery 拦截处理 Ajax 返回结果
https://www.itsvse.com/thread-9570-1-1.html
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2021-3-1 14:12

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表