业务逻辑不放在前端是因为前端代码谁都能看见吗

116 天前
 pureGirl
6553 次点击
所在节点    程序员
49 条回复
RJH
116 天前
不一定,有些交互的判断还是得前端做。

某些业务逻辑,例如判断某些数据是否存在,只能后端来
rimworld
116 天前
最近在写全栈,主要是后端先天不能过于相信传递来的数据,还是要自己进行校验,再重新处理,走一遍业务逻辑。前端做好展示就行。前端确实业务逻辑会少一点。toB 的或者企业内部管理系统,可能前端业务逻辑还多点。
iugo
116 天前
如果是单体应用, 那么放在前端也没什么问题. 但目前大多数应用的数据是储存在后端的, 如果出现前端并发, 就需要在后端处理才能良好解决这类问题.

当然, 安全问题也是一个重要的考虑项. 比如第三方密钥 (比如 OpenAI API Key), 一定要储存在后端, 不能放在前端.
luoyou1014
116 天前
前端存在多端,安卓/ios/pc/H5/小程序……

业务逻辑放在前端的话,就要重复写很多遍,改的时候也要改很多遍,某一端漏改了,就会产生不一致的问题。

放在后端的话只要写一遍,其他原因都是次要的
ererererdlfk
116 天前
前端 ui 界面多样化(比如 m 、pc... app ),一个接口往往可作用于多个 ui 模块。从耦合层面来看,丢后端往往只需处理一次
1Z3KYa0qBLvei98o
116 天前
还有有些计算量大/重复计算/可以缓存在前端的东西, 可以利用一下 client, 给自己的服务器减少点压力.
Joey2022
116 天前
我是游戏后端,如果业务放在前端,玩家作弊怎么办
egan0606
116 天前
前端负责渲染, 业务控制在 后端, 更可控,更灵活,且如果存在多端的情况下, 业务逻辑处理能够保持一致性;
HongXinss
116 天前
前端不配
QlanQ
116 天前
不知道你说的 业务逻辑 是指哪些?如果 业务逻辑有变动,是不是前端都需要跟新才行?
1Z3KYa0qBLvei98o
116 天前
@HongXinss v8 引擎的计算性能还是可以的, 否则就没有 wasm 什么事情了.
irisdev
116 天前
前端 build 很慢呀,有点逻辑写错了上线是不是挺麻烦的
66beta
116 天前
放后端只需要维护一个点,前段可能有多端
skallz
116 天前
一般很多逻辑前后端都要做,后端做的目的是前端数据不可信,前端做的目的是摆脱接口请求带来的卡顿感,可以看很多操作丝滑的应用,都是把很多逻辑同时放到前端处理了,当然很多偏重技术的会觉得后端接口请求就一两百毫秒,已经非常快了,根本不会影响操作,但是事实上就是网络和接口请求的响应速度不可控,如果每一个交互全部都依赖接口就不可避免会带来应用交互的卡顿感。
ps:已经见过有产品因为这个问题以及其他交互和业务体验问题,导致虽然功能比竞品多,但是惨败。。。
mangojiji
116 天前
数据库密码也放前端吗?
chendy
116 天前
那么前端的业务逻辑(比如按钮可用不可用,比如各种交互细节)算不算业务逻辑呢…
terranboy
116 天前
看业务逻辑重不重要,前端数据不可信是重点
dayeye2006199
116 天前
你:我取 500 块钱
银行:我们取钱都是 DIY 的,这边是金库,你自己进去点 500 块然后出来
你:???!!!

现代前端 == 客户端
pureGirl
116 天前
@terranboy 啥叫前端数据不可信,那传到后端不也是不可信吗
terranboy
116 天前
@pureGirl 对的 看数据重要程度 , 前端数据传到后端要校验的,所以为啥业务逻辑要放后端

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1113995

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX