码迷,mamicode.com
首页 > 其他好文 > 详细

一个关于登录收藏

时间:2017-07-07 21:42:09      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:定向   排查   strong   登录验证   回调   log   bsp   span   浏览器   

电商网站有这样一个需求

  •     登录的用户才能收藏商品,
  •     未登录的用户点击收藏会跳转到登录,登录完成后再跳回商品页面

类似下面功能(摘自京东):

技术分享

实现过程:

已经登录的用户关注成功,不做讨论。下面只讨论未登录用户:

  • 关注接口做登录校验,未登录的跳转到登录页,并附上回调链接(当前商品页面地址)
  • 商品详细页面用ajax请求调收藏接口
  • 后台java登录拦截器拦截请求做登录验证,未登录的response.sendRedirect跳转到登录页

然后发现浏览器可以看到login的请求,但页面不跳转(ajax的get与post方法都不能跳转),经排查发现原因:ajax异步处理不会做重定向,浏览器直接访问能跳转登录地址

暂时做的处理方法是,商品详细页附带了一个bool类型的登录状态loginstatus,然后用户点击关注按钮时,前台根据登录状态判断是否登录:

  • 未登录用户跳转到登录
  • 已登录用户直接调用关注接口,此时关注接口会通过登录验证

处理完后,发现京东也有收藏功能,于是顺便研究了下京东的关注功能:

京东未登录用户看到的商品详细页:

技术分享

 

 查看http请求,也是通过loginState来区别

登录成功的用户:

技术分享

 

最后,其实这并不是什么难点,传统做法直接通过前台页面绑一个状态就可以轻松实现。现在流行的前后端分离,只能通过接口访问来实现了。

 

一个关于登录收藏

标签:定向   排查   strong   登录验证   回调   log   bsp   span   浏览器   

原文地址:http://www.cnblogs.com/mr-yang-localhost/p/7133829.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!