一、购物车要求:
用户不登录可以使用购物车功能,可以向购物车中添加、删除商品;用户登录后需要达到更换设备购物车信息可以同步。
二、实现原理:
1、要求用户登录;
2、把购物车商品列表保存到数据库中。推荐使用redis;
3、Key:用户id,value:购物车商品列表。推荐使用hash,hash的field:商品id,value:商品信息;
4、在用户未登录的情况下写cookie。当用户登录后,访问购物车列表时,
a、把cookie中的数据同步到redis;
b、把cookie中的数据删除;
c、展示购物车列表时以redis为准;
d、如果redis中有数据cookie中也有数据,需要做数据合并。相同商品数量相加,不同商品添加一个新商品。
5、如果用户登录状态,展示购物车列表以redis为准。如果未登录,以cookie为准。