zoukankan      html  css  js  c++  java
  • 一个关于登录收藏

    电商网站有这样一个需求

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

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

    实现过程:

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

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

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

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

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

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

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

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

    登录成功的用户:

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

  • 相关阅读:
    在Ubuntu中通过update-alternatives切换软件版本
    SCons: 替代 make 和 makefile 及 javac 的极好用的c、c++、java 构建工具
    mongodb 的使用
    利用grub从ubuntu找回windows启动项
    How to Repair GRUB2 When Ubuntu Won’t Boot
    Redis vs Mongo vs mysql
    java script 的工具
    python 的弹框
    how to use greendao in android studio
    python yield的终极解释
  • 原文地址:https://www.cnblogs.com/mr-yang-localhost/p/7133829.html
Copyright © 2011-2022 走看看