登录后,实现cookie信息和数据库信息的合并
来源:互联网 发布:haoduofuli新域名 编辑:程序博客网 时间:2024/05/18 00:21
购物车流程图:
逻辑:当用户登录之后,判断cookie中是否有购物车信息,如果有,和用户数据库中的购物车商品完成合并,如果cookie中没有购物车信息直接完成登录。
用户发起请求登录,前端控制器UserController调用SSO(单点登录)的一个接口,进行登录验证,成功后返回ticket,不成功返回error状态;登录成功还需发一条消息到(RabbitMQ的交换机),拿到这条消息的应用程序(RabbitMQ)绑定了消息队列,监听消息的应用程序得到这个消息后,做自己的业务逻辑,完成redis和数据库中购物车商品的合并。
发送的消息内容应当包含:1.用户——>> userId
2.redis中购物车信息——>> cookie中key——>>TT_CART
要想得到未登录前cookie中的商品信息,需要把用户登录时的cookie信息传递给controller,controller调用service,service,调用SSO登录验证,并把cookie中的key
连同userId
传递给RabbitMq的消息队列 :this.rabbitTemplate.converAndSend(msg)
。
更改UserService中的dologin()方法和UserController的dologin()方法,如下
UserController.dologin()接受cookie
这样就把cookie中key传递到了业务逻辑中。
第二步,在SSO
中接收params.put("data",cartKey)
的data参数
,并实现发送消息到RabbitMQ的消息交换机
并配置MQ:
这样,消息就发送出来了。
第三步,在taotao-cart中监听队列消息并且完成数据的合并
首先来配置rabbitMQ队列的监听:
监听的类:loginCarHandler
监听的队列:taotao-car-login
处理逻辑:
完成队列和交换机的绑定
- 登录后,实现cookie信息和数据库信息的合并
- .net mvc 利用cookie实现自动登录 退出后注销信息
- 系统登录后设置Cookie记住登陆信息
- 更新合并后的订单汇总信息
- 用Cookie 保存登录信息
- 使用Cookie记录登录信息
- 用Cookie保存登录信息
- cookie记住用户登录信息
- cookie入门理解--自动填写用户登录信息的实现原理
- 通过Filter实现用户必须登录后才允许访问配送信息的填写页面和后续页面
- 分别用cookie和session保存用户登录信息
- cookie中存储登录信息的基本操作
- 信息的合并
- 合并两张表的信息
- android_实现用户登录信息的保存
- 学员信息的注册登录以及登录成功后的信息遍历
- cookie session 保存用户登录信息
- 登录信息保存到cookie(js)
- distinct的讲解以及与Group By的区别
- Unity3D引用DLL库时打包发布的问题及解决方案
- 推送通知异常处理
- python27连MySQL win64
- HTML5学习_day01(3)--css样式引用方式
- 登录后,实现cookie信息和数据库信息的合并
- Android内核安全机制理解
- 说一说安卓如何快速搭建app架构
- 简单的Windows Webcam应用:Barcode Reader
- 6-1 多态性与虚函数
- memcached安装说明
- python数据质量分析小例子
- 7.Android基础:四大组件之----->ContentProvider
- 观察者设计模式