当前位置: 首页 > news >正文

服务端之NestJS接口响应message编写规范详解、写给前后端都舒服的接口、API提示信息标准化

MENU

  • 前言
  • 定义
  • 提示信息设计原则
  • 提示信息风格分类
  • 提示信息模板化设计
  • 国际化与多语言支持
  • 最佳实践
  • 参考示例(NestJS响应)
  • 总结
  • 统一风格示例清单推荐
  • API响应message清单(可直接使用)

前言

在现代后端开发中,接口响应不仅仅是数据的传递,还承担着向前端或用户传递操作状态和结果的功能。一个规范、统一的message字段设计,可以显著提升系统的可维护性、前端开发效率和用户体验。


定义

响应结构示例(NestJS风格)

return{status:200,// 可选,HTTP状态码message:'获取数据成功',// 提示信息data:{list,// 数据列表page:1,// 当前页size:10,// 每页数量total:list.length// 数据总数}};

各字段作用

字段类型说明
statusnumberHTTP或自定义状态码,用于程序判断
messagestring操作反馈信息,可显示给用户或用于日志
dataobject实际返回的数据对象,包含列表、分页或其他信息

提示信息设计原则

简洁明了
1、不宜过长,一般3~12个汉字。
2、避免含糊不清的词,如“完成了”、“OK”等。


统一风格
1、同一项目接口建议使用统一动词+状态组合,例如:获取数据成功、数据加载完成。


上下文清晰
1、提示信息应体现操作对象或类型,如“用户列表获取成功”而不是“获取成功”。


可扩展与模板化
1、对于多类型数据返回,可使用模板化语法:

message: `${dataType}获取成功`

2、如 设备列表获取成功、订单数据获取成功


面向用户与面向开发分层
1、前端提示:简短易懂,强调用户操作状态。
2、后台日志 / 文档:正式、完整,便于排查接口状态。


提示信息风格分类

简洁风格(前端显示)

场景示例
通用成功获取数据成功、操作成功
列表数据数据加载完成、列表加载成功
数据更新更新成功、保存成功

正式 / 日志风格(后台接口 / 接口文档)

场景示例
数据获取数据已成功获取、列表数据已返回
数据更新数据更新操作已完成、保存操作成功
数据删除删除操作已完成、记录已成功删除

带数量 / 上下文提示

场景示例
列表数据已成功获取用户列表,共15条数据
分页数据列表数据获取成功,共10条记录,当前页1
操作反馈设备列表加载完成,共20条可用设备

带操作指引提示

场景示例
后续操作提示数据加载成功,可进行下一步操作
页面跳转提示数据获取成功,请查看详情
用户操作操作成功,数据已更新

提示信息模板化设计

模板
为了统一风格和减少重复代码,可设计模板:

functionbuildMessage(dataType:string,action:'获取'|'加载'|'更新'|'删除',extra?:string){return`${dataType}${action}成功${extra?`${extra}`:''}`;}// 示例message:buildMessage('用户列表','获取',`${list.length}`)

输出:用户列表获取成功,共10条


模板化好处:
1、统一风格,易维护
2、可动态生成提示内容
3、可适配多语言(国际化)


国际化与多语言支持

模板
在国际化项目中,message应使用 语言文件或翻译key,避免硬编码:

return{message:i18n.__('data.fetch_success'),// 英文:Data fetched successfullydata};

好处
1、适配不同语言
2、前端可直接展示翻译内容
3、后端日志仍可使用统一key便于排查


最佳实践

前端提示短小清晰
1、数据加载完成、获取数据成功


后台 / 日志提示正式完整
1、数据已成功获取、列表数据已返回


数量提示增加用户反馈
1、列表数据获取成功,共${list.length}条


模板化 + 动态内容
1、提高复用率,降低出错率


避免模糊词
1、不使用“OK”、“完成了”、“操作成功了”
2、必须明确操作对象、状态或数量


参考示例(NestJS响应)

return{status:200,message:`用户列表获取成功,共${list.length}`,data:{list,page:1,size:10,total:list.length}};

1、前端显示,用户列表获取成功,共10条
2、日志可记录status+message用于接口监控


总结

1、message字段是接口的重要组成部分,承担操作反馈和提示作用。
2、优化目标:简洁、统一、明确、可扩展、可国际化。
3、规范化提示信息:
3.1、前端提示:短小清晰,用户友好
3.2、后端日志 / 文档:正式完整,便于排查
3.3、可模板化,适应多接口、多数据类型
3.4、可动态添加数量或操作引导


统一风格示例清单推荐

类型示例message
数据获取获取数据成功 / 数据已成功获取 / 列表数据获取成功,共N条
数据更新更新成功/数据更新操作已完成
数据删除删除成功/记录已成功删除
操作提示数据加载成功,可进行下一步操作
列表提示用户列表获取成功,共 N条

API响应message清单(可直接使用)

1、前端提示(简洁直观)
获取数据成功数据加载完成操作成功保存成功更新成功删除成功


2、后端日志 / 正式风格(完整清晰)
数据已成功获取数据获取操作完成列表数据已返回数据更新操作已完成记录已成功删除请求已成功处理


3、列表类提示(带上下文)
用户列表获取成功设备列表获取成功订单列表获取成功日志记录获取成功配置数据获取成功


4、分页 / 带数量提示
列表数据获取成功,共${list.length}条用户列表加载完成,共${list.length}条数据获取成功,当前页${page}/共${totalPages}页数据加载成功,本页${list.length}条,总数${total}条查询成功,符合条件的数据共${total}条


5、操作提示 / 引导型
数据加载成功,可进行下一步操作操作成功,数据已更新删除成功,记录已移除保存成功,请刷新查看数据获取成功,请查看列表

http://www.jsqmd.com/news/446831/

相关文章:

  • 基于GX Works2的ST语言介绍
  • 用对 CS_ / RS_:看懂 SAP HANA 执行引擎选择,写出更稳更快的 SQL
  • puzzle(0712)Lazors、折射之光
  • 【有趣项目 Windows】浏览器使用技巧:chrome数据数据设置+实现浏览器双开、多开
  • 蓝桥杯嵌入式(STM32G431RBT6)入门第四天——系统嘀嗒定时器(SysTick)|CSDN创作打卡
  • Web前端之Sass中的颜色函数、active按钮激活、disabled禁用、hover鼠标悬浮、Style循环、Css
  • 海康威视网络摄像头配置本地存储服务器进行录像和查看!(需要有老版本存储服务器软件和4200老版本搭配使用,官网没有了)
  • VisualStudioCode之各种配置介绍、终端不能运行yarn脚本、自动添加或补全双引号、文件头部的注释说明、保存时禁止格式化、重新加载窗口
  • 【KEIL】【JLINK】KEIL如何进行远程调试
  • 2026年商用咖啡机厂家深度测评:基于全链路能力与创新实效的四维战力解析 - 品牌推荐
  • 2026年商用咖啡机厂家权威榜单发布:五大品牌技术实力与服务网络深度排位赛 - 品牌推荐
  • 蓝桥杯嵌入式(STM32G431RBT6)入门第三天——使用按键(KEY)|CSDN创作打卡
  • ARM-MPU内存保护单元详解
  • 《计算机体系结构基础》课程速看(一)
  • 物联网之Arduino编程语言、条件语句、循环语句、变量、数组、函数
  • Web前端之页面可见性与元素重叠、懒加载、显示、隐藏、交叉、IntersectionObserver、visibilitychange
  • 怎么一步步实现小米智能家居之玄关篇
  • 探索PQ控制三相并网逆变器:从理论到仿真
  • 蓝桥杯嵌入式(STM32G431RBT6)入门第二天——建立自己的初始化文件|CSDN创作打卡
  • 服务端之NestJS中获取完整请求Host的四种封装方式及应用场景、Service与拦截器对比、工具函数、装饰器
  • SAP HANA SQLScript 性能定位的起手式:用支持性工具锁定主导语句与主导算子
  • Cadence
  • 蓝桥杯嵌入式(STM32G431RBT6)入门第一天——点亮LED|CSDN创作打卡
  • Web前端之监听元素的重叠度、设置所有元素的滚动条宽度都为0、节点布局的交叉状态、生成随机图片、阮一峰、标签、IntersectionObserver
  • 【解决】Ping 不是内部或外部命令,也不是可运行的程序或批处理文件
  • Python相关问题
  • 算法---LeetCode 剑指 Offer 26. 树的子结构
  • Web前端之上传文件夹、webkitdirectory
  • 通俗易懂解释知识图谱(Knowledge Graph)
  • Web前端之实现酷炫的仪表进度条、JavaScript动态设置Css属性值、标签元素属性选择器、hsl样式函数