首页 > 其他分享 >比如开发过程中,后端要求前端将一些没有必要的前端不需要的字段原封不动的传递回去,这样是否合理?

比如开发过程中,后端要求前端将一些没有必要的前端不需要的字段原封不动的传递回去,这样是否合理?

时间:2024-05-20 14:20:31浏览次数:23  
标签:不必要 原封不动 前端 传递 字段 数据传输

后端要求前端将一些不必要的字段原封不动地传递回来,这种做法通常并不合理,主要原因如下:

  1. 增加数据传输负担:每次请求包含额外无用的字段会增加数据传输的体积,特别是在移动设备或网络条件不佳的情况下,这可能导致响应速度变慢,影响用户体验。

  2. 资源浪费:无论是服务器带宽、内存还是CPU,在处理和传输这些不必要的数据时都会造成资源浪费。

  3. 维护成本:随着时间推移,如果这些字段的结构或含义发生变化,可能需要在多个地方(前端和后端)同时进行更新,增加了代码维护的复杂度。

  4. 潜在的错误来源:传递不必要的数据可能会引入潜在的错误,尤其是在后端对这些字段有特定处理逻辑或假设它们已过滤的情况下。

理想的实践是,后端应该只返回前端需要的数据,采用按需返回的原则。如果某些字段确实需要回传(例如,用于审计日志、调试或其他后端逻辑),后端可以明确指定哪些字段是必需的,并且应当在文档中清晰说明其用途。
此外,可以使用诸如@JsonIgnore(在Java的Jackson库中)这样的注解来忽略那些不需要序列化的字段,减少不必要的数据传输。

因此,前后端团队应该协同工作,优化数据交互模式,确保数据交换的高效性和必要性,避免无谓的数据往返。

标签:不必要,原封不动,前端,传递,字段,数据传输
From: https://www.cnblogs.com/longmo666/p/18201806

相关文章

  • 性能实战训练营 - 前端性能分析 - 慧测
     通过火狐浏览器,浏览网站,(开启了yslow)(类似的谷歌的工具是pagespeed)得到页面上各项的得分(参考高性能网站建设指南),字母越靠后,分值越低。 点击可查看详情空点击Componects,查看各个资源的压缩情况和请求消耗时间: 查看yslow的完整报告:danatrace工具可以分析js性能......
  • 小白总结uniapp微信小程序跨域问题的解决(前端)
    小白总结uniapp微信小程序跨域问题的解决(前端):https://blog.csdn.net/m0_69848498/article/details/137628381?ops_request_misc=&request_id=&biz_id=102&utm_term=%E5%B0%8F%E7%A8%8B%E5%BA%8F%E5%AD%98%E5%9C%A8%E8%B7%A8%E5%9F%9F%E9%97%AE%E9%A2%98%E5%90%97&utm_medium=......
  • Django markdown前端页面渲染
    提取目录(方式一)importmarkdownfrommarkdown.extensions.tocimportTocExtensiondefcontent(request,content_id):content_id=int(content_id)content=Content.objects.get(id=content_id)md=markdown.Markdown(extensions=['markdown.extension......
  • 前端使用 Konva 实现可视化设计器(11)- 对齐效果
    这一章补充一个效果,在多选的情况下,对目标进行对齐。基于多选整体区域对齐的基础上,还支持基于其中一个节点进行对齐。请大家动动小手,给我一个免费的Star吧~大家如果发现了Bug,欢迎来提Issue哟~github源码gitee源码示例地址基于整体的对齐垂直居中水平居中左对齐......
  • 前端传递不同格式时间后端统一转化
    这几天遇到了一个问题,就是我后端再接受查询条件的时候,关于条件我都是用TimeQuery来接受的,但是因为前端的比较混乱,就导致了有些传参是年月日,有些传参是年月日时分秒格式,就导致我后端一直出转化异常的错误,当时就是叫前端传参都用下统一的格式packagecom.state.time;@Datapubli......
  • 基于exceljs的前端多级表头的导出
    磨了两天半磨出来的功能exceljs官网https://github.com/exceljs/exceljs/blob/HEAD/README_zh.md贴个demo图 上代码:引入:importExcelJSfrom'ExcelJS'; 数据:data(){return{tableColumn:[{prop:'a',label:......
  • 前端面试题 - vue的双向绑定原理是什么?
    前端面试题-vue的双向绑定原理是什么?vue2的双向数据绑定是通过数据劫持结合发布者订阅者模式的方式来实现。通过object.defineProperty来劫持各个属性的setter,getter,在数据变化时发布消息给订阅者,触发相应的监听回调来渲染视图。Vue3利用Proxy代理来处理双向数据绑定。可以......
  • 前端学哪些技能,能饭碗越铁收入还高?
    随着经济的下行以及移动互联网发展趋于成熟,对软件开发人员的需求大大减少,互联网行业所有的公司都在降本增效,合并通道,降薪优化的新闻层出不穷。但相比其他行业,互联网行业的从业者薪资还是比较可观的,但要求也比之前高了很多,需要大家掌握更多的技能和在某些技术领域深耕。今天我们......
  • 前端启动失败,踩坑/报错node-sass版本与本地环境不符
    Node自带npm,但自己可能后期升级过npm,终端使用命令自查当前node与npm版本号,按照需要对照下图修改。通常是由于前端项目sass版本与本机Node环境不符导致前端启动失败,可在前端项目的package.json中找到node-sass版本号.       node与node-sass版本匹配图,直戳官网......
  • 前端面试题 - Node与浏览器的事件循环的差异?
    前端面试题-Node与浏览器的事件循环的差异?浏览器环境下,每执行完一个宏任务就执行所有微任务队列。在Node10之前,微任务会在事件循环的各个阶段之间执行,Node的事件循环分为6个阶段,它们会按照顺序反复运行。每当进入某一个阶段的时候,都会从对应的回调队列中取出函数去执行。......