当前位置: 首页 > article >正文

网站的记住我功能与用户登录持久化

1.先决条件:拿到了后端发的凭证并做了持久化储存

2.在1的基础上,加上一个记住我功能,记住我的体现暂时定为:
a.不勾选记住我:在浏览器的对话窗不关闭的情况下,凭证是存在有效的,但关闭了对话框,凭证就会过期。

b勾选记住我:在浏览器的对话窗不关闭的情况下,凭证是依然存在有效的,并且下一次访问本网站能展示出上一次登录用户的信息。

3.实现:
将是否记住我作为设置凭着储存时长的依据,

a.不勾选记住我:凭证过期时间为会话时间

b勾选记住我:凭证过期时间为3天、7天等前端自定义的时间

4.代码实现

cookieOptions

  setCookies(apiResult: any) {
    const isRememberMe = JSON.parse(localStorage.getItem("remember_me"));
    if (isRememberMe) {
      this.cookieOptionsServiceService.setExpirationDays(7)
    } else {
      this.cookieOptionsServiceService.setExpirationDays(null)
    }
    const { expirationDays, cookiePath } = this.cookieOptionsServiceService.getOptions()
    this.cookieService.set(
      "username",
      apiResult.userInfo.username,
      expirationDays,
      cookiePath
    );

  }


http://www.kler.cn/a/540447.html

相关文章:

  • vscode预览插件
  • ximalaya(三) playUriList值解密--webpack
  • 【web自动化】指定chromedriver以及chrome路径
  • ansible使用学习
  • 【共享文件夹】使用Samba服务可在Ubuntu和Windows系统之间共享一个实际的文件夹
  • kafka专栏解读
  • 【UVM】寄存器模型
  • opencv:基于暗通道先验(DCP)的内窥镜图像去雾
  • fastjson2学习大纲
  • init的service 启动顺序
  • 基于 gitee 的 CI/CD
  • 球弹跳高度的计算(信息学奥赛一本通-1085)
  • 【JavaScript】this 指向由入门到精通
  • HTML标题标签(<h1>、<h2>、<h3>)的正确使用策略与SEO优化指南
  • 网络安全 — 安全架构
  • 实现双向数据绑定
  • 局域网使用Ollama(Linux)
  • 智慧校园与理工大学:信息技术在高等教育中的应用
  • 使用Python爬虫获取淘宝商品评论API接口数据
  • 前瞻技术解密:未来生活的改变与机遇
  • 1-portal认证功能
  • CPLD实现SPI通信
  • 使用XMLHttpRequest发送带查询参数的 GET 请求并动态展示数据
  • [LLM面试题] 指示微调(Prompt-tuning)与 Prefix-tuning区别
  • ndk 编译opencv(去除libandroid.so mediandk依赖)
  • 单片机复杂项目的软件分层设计