我用京东,美团 app,在下单页面,就是可以增减商品数量购物车页面,每按一次加减,好像都向后台请求了一下数据,断网后加减提示网络错误,也没有给出最新的费用合计。
所以,这些费用计算都是后台,前台不需要计算只管展示吗?这样会不会给服务器压力呢,每次都请求一下?
1
freedomshi 2018-12-27 10:16:29 +08:00
放后端更好一点,如果价格不一致导致交易就很麻烦。
|
2
RoyL 2018-12-27 10:16:32 +08:00
价格库存都会变的,怎么能放前台呢...
|
3
binaryify 2018-12-27 10:17:39 +08:00
当然是后端
|
4
tinytin 2018-12-27 10:18:45 +08:00
后端算,或者前后端都算,提交时候后端再验证一遍
|
5
shiguiyou OP @freedomshi 后台肯定要计算校验前台的计算,只是不知道前台要不要算,因为 android ios h5 的精度可能不一样,计算有点差距。
|
6
helionzzz 2018-12-27 10:19:30 +08:00
你要是后台都是固定的价格当然可以只用前端计算
|
7
yangehappy 2018-12-27 10:19:51 +08:00
后端算 前端算的可能和后端不一致
|
9
airyland 2018-12-27 10:22:12 +08:00 1
后端。前端无法处理复杂的计算逻辑,前端可能会被恶意改价格。
即使出于方便你想在前端做,也一定需要在后端再计算一次进行比较。 如果计算价格也是压力,那说明做得特别差,基础功能都还没满足。 |
10
keinx 2018-12-27 10:23:17 +08:00
各种优惠促销规则,你在前端算起来超级麻烦,而且还没办法事实判断这个优惠促销是否可用(比如优惠券)
|
11
tabris17 2018-12-27 10:23:37 +08:00
后端,前端无法解决购物车组合优惠这一类的业务逻辑
|
12
DamonLin 2018-12-27 10:24:52 +08:00
肯定是后端
|
13
autoxbc 2018-12-27 10:36:27 +08:00 via iPhone
猴厂前端代码被人扒之类的事出的多了,以后逻辑都得放后端
|
14
demonzoo 2018-12-27 10:39:37 +08:00
肯定后端啊,前端 js 算的话太容易被篡改了好吧
|
15
maplelin 2018-12-27 10:40:30 +08:00
我们是前端后端都算一边,以后端的价格为准
|
16
rcj6056 2018-12-27 10:41:35 +08:00
我都给你说了 放后台计算鸭,每次加减请求就完事了,你们后台很有问题
|
17
also24 2018-12-27 10:46:30 +08:00 2
大部分流程中,是存在两个页面的:
A. 可以增减商品数量购物车页面 B. 不可增减商品数量的结算页面 A 页面如果不涉及购物车同步功能,可以考虑纯前端计算,这样用户体验更流畅。 同时可以考虑对特殊商品(如秒杀,限购)采取特殊策略。 A 页面如果涉及购物车同步功能,那么后端计算吧,反正同步购物车已经挺卡的了(我的淘宝购物车,反馈极慢,经常出现 “点过头” 的情况) B 页面,肯定是后端计算,因为用户无法修改商品,不需要担心延迟和性能问题。 |
18
tianyou666shen 2018-12-27 10:57:14 +08:00
告诉我哪家后端不算的 我现在就去下单 买到你破产
|
19
GentleSadness 2018-12-27 11:06:47 +08:00
@tianyou666shen 京东一开始就是前端,然后改单的人被抓了
|
20
x86 2018-12-27 11:32:46 +08:00 via iPhone
放前端能撸的你怀疑货币单位
|
21
red0range 2018-12-27 11:33:26 +08:00
你在逗我
|
22
yoshiyuki 2018-12-27 11:33:34 +08:00
前端计算,后端校验
|
24
JFLW 2018-12-27 11:36:46 +08:00
不应该前后端都算吗?前端自己算,是自己展示费用消耗给用户,后端算是确保数据正确性,每次都去请求,设计不合理吧,只有在付款锁单的时候才去请求吧
|
25
imnpc 2018-12-27 11:46:34 +08:00
阿里云曾经放在前端计算 某些组合会出现 0 元甚至负数订单 后来整体前台 UI 框架全换了 也是后台获取价格
|
26
whileFalse 2018-12-27 12:32:53 +08:00
别老动不动就想着服务器压力。
|
27
qiuyun8m 2018-12-27 12:37:41 +08:00
肯定是后端, 至于前段要不要也计算根据成本和业务的复杂度来考虑.
|
28
conn4575 2018-12-27 12:45:02 +08:00 via Android
不管前端算不算,后端肯定要算的,如果前端可以一直保持和后端计算逻辑一致,前端自己算也是可以的🤣
|
29
jsq2627 2018-12-27 12:50:59 +08:00
后端算
不是服务器压力和安全问题,纯粹是开发成本原因。商品组合、库存、优惠逻辑复杂,没必要前端再做一遍 |
30
sike03 2018-12-27 12:55:58 +08:00 via Android
前后端都算,前段用于展示,后端用于真正支付。以后端计算为准。
|
31
zw1one 2018-12-27 12:56:05 +08:00 via Android
你前端算了,后端也得算一遍啊。前端的参数做 web 开发的能随便改的。
|
32
ydirel 2018-12-27 13:19:41 +08:00
后端
|
33
liuxey 2018-12-27 14:27:05 +08:00
要我说,在商品页的售价或者打折价都应该是后端推过来的,购物车和订单结算页就更应该是后端计算。
|
34
hasbug 2018-12-27 14:32:07 +08:00
前端做计算展示,后端负责生成真正的付款金额下单。
|
35
V2exUser 2018-12-27 14:37:11 +08:00 via Android
优惠券要检测过期与否,所以像京东这种必须放在后端按服务器时间检测
|
36
Eirxxx69 2018-12-27 14:59:38 +08:00
页面中涉及到价格,库存这些信息展示的都是请求后端的。
|
37
Eirxxx69 2018-12-27 15:01:08 +08:00
请求价格服务,在购物车服务里做计算,这些数据都是实时的,压力肯定是有的,但这些压力的成本小于提交订单和计算商品价格不一致带来的风险成本
|
38
huijiewei 2018-12-27 15:11:05 +08:00 via iPhone
前后端都算
然后对比是否一致 |
39
JamesR 2018-12-27 15:22:40 +08:00
黑产了解一下,哈哈哈哈。
|
40
sarices 2018-12-27 15:28:46 +08:00
后端算,js 计算有陷阱,要特殊处理
|
41
Ritr 2018-12-27 16:53:42 +08:00 1
后端计算
1、js 浮点数计算有问题,大家都知道 2、确保数据安全、实时、准确 |
42
xschaoya 2018-12-27 17:43:09 +08:00 via Android
前段吧,程序员重大利好,褥羊毛不是梦
|
43
VitaCoCo 2018-12-27 18:13:56 +08:00
前后端都算,但是在出单的时候以后端数据为准
前端算的原因是显示速度更快,使用户能获得即时的反馈 |
44
notreami 2018-12-27 18:42:51 +08:00
考虑 2 个场景:
1、变价前打开页面,变价后下单,如何告知用户价格变了? 2、码农改改 js,改成 1 分钱,这单能成嘛? |
45
imn1 2018-12-27 18:55:25 +08:00
任何需要提交的都必须后端校验,这个不用说了吧
前端做的,应该是不同性质的功能,例如只是报价性质的计算 良心一点就在当提交价格和后端校验不一致时,发出一个警告信息 |
46
terranboy 2018-12-27 19:30:08 +08:00
前端数据不可信,基本常识
|
47
Hellokids 2018-12-27 19:41:58 +08:00 via iPhone
1. 如果你指的前端包括 app 和网页,那么 app 的用户不升级情况考虑下
2. 新增优惠活动是否频繁,前端怎么兼容考虑下 3. 对于一个购物平台,大部分交互都偏向于引导用户购买,平台和服务器压力之间权衡下 综合上述几个点,考虑下平台的实际情况看一步到位还是慢慢迭代 |
48
reus 2018-12-27 21:35:20 +08:00
当然后端算,后端是一定要算的,前端再算一遍没有意义,如果算法改了,难道前后端都改吗?
|
49
valkyrja 2018-12-27 21:47:57 +08:00
楼上好像大多都不审题,楼主问的是下单前的费用计算……如果简单展示的加减感觉前端做一下计算没有大问题,提交订单的时候以后端结果为准,数量加减的请求可能是在拉库存数量
|
50
luzemin 2018-12-27 22:11:51 +08:00
和表单校验一样,前端的操作为了更好地体验,服务端无论如何都要走一遍的。
|
51
annielong 2018-12-28 09:07:35 +08:00
前台后台都要算,前台计算用于展示,完善用户体验,提交到后台再算一次,是为了数据安全
|
54
suler 2018-12-28 11:51:16 +08:00
在购物车增减商品,等于就是更新你的购物车,肯定要重新请求的。
|