作者:多多之爱 | 来源:互联网 | 2023-08-04 11:40
如题,他说购物车绝对不能用cookie做.说有高手能进入修改Cookie里的信息比如产品单价之类的我就晕了,购物车不用Cookie做的话哪只有数据库了,这样的话数据库的压力也稍稍大了点吧
如题,他说购物车绝对不能用COOKIE做.说有高手能进入修改COOKIE里的信息比如产品单价之类的
我就晕了,购物车不用COOKIE做的话哪只有数据库了,这样的话数据库的压力也稍稍大了点吧...
各位购物车是用什么方法做的?
29 个解决方案
好像购物车大多是用COOKIE的。COOKIE本身有加密,如果硬说是不安全那数据库也会给人注入,这没得说的。
session易丢失
COOKIE安全性,太多session会影响服务器
session和COOKIE结合,实现加密
hashtable 等实现购物车
没有绝对的安全
美国国防部的网站都能被黑,何况我们呢
谁JB说不安全的! 用COOKIE只不过是以用户未登录的时候用 结账的时候肯定存数据库了
淘宝 什么的都是用COOKIE的
是呀,我也郁闷了,购物车不用COOKIE太浪费了.
用COOKIE存储物品的ID就行。
然后服务器用缓存存储物品的附属信息(价格等)
然后结算的时候肯定在服务端计算的。
单价你也保存在COOKIEs 里面的话,我都不知道说什么好了。
COOKIEs 保存购物车的id就得了。
COOKIEs 里面的id顺便它改,无非就是买了跟别人一样的商品,顺便,多多益善。
COOKIE只保存购物车ID就好了。 保存个ID的,没什么不安全的。
你总不会读取COOKIE里面的金额填到数据库里吧.
这个,你为什么要把价格保存在COOKIE中呢.一般是保存产品id,名称等.
即便保存价格,也只是用于 展示给用户看
真正到支付时,再通过COOKIE中的id,从数据库中读取价格.
这有什么不安全呢.
引用 8 楼 winner2050 的回复:
单价你也保存在COOKIEs 里面的话,我都不知道说什么好了。
COOKIEs 保存购物车的id就得了。
COOKIEs 里面的id顺便它改,无非就是买了跟别人一样的商品,顺便,多多益善。
主要是从减轻数据获取方面,想提高下性能。他要是修改钱,在后台也是可以看到的嘛。不过价格存在COOKIE里的确不好
如果这样的话 那用COOKIE就么有意义了 ,COOKIE就是为了减轻服务端的压力。这样每次都要查询一次。
可以在最后付款的时候 查询数据库里面的价格。购物车的还是以COOKIE为主。
这样就算修改了,金额还是正确的。
lz说的 购物车绝对不能用COOKIE说的那个人太绝对了。
数据库的压力根本就可以忽略。
数据库没有那么差劲。
不管你用COOKIEs 、 session 、还是用DB都可以。
但是你要考虑安全和效率问题
1.COOKIEs存到客服端硬盘上,不占服务器空间。而且时间可以设置长一点,比如1天 2天....
2.session存到服务器上,占服务器内存,影响服务器运行效率,虽然session的时间也是可以设置长一点的,但是你要考虑到session时间过长了,会有不安全的因素。
3.DB存到数据库,固然安全,当客户结账之后你要自动清除数据,如果是时间长了有很多客户没有结账导致有很多垃圾数据,那么你就要想办法定期清除数据了。
4.COOKIEs和DB集合用,先存到COOKIEs结账的时候在存到DB,这样既解决了占用服务器内存的问题,也减少了数据库有垃圾数据的问题。相对也比较安全。
你可以用一下asp.net 3.5的新特性profile,专门针对购物车的。
你可以用一下asp.net 3.5的新特性profile,专门针对购物车的。
学习,
做过,用的是System.Collections.Generic.Dictionary
ID号和数量
确认订单的时候验证一下物品id 和金额,感觉不收少钱,应该问题不大吧