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

十八、【用户认证篇】安全第一步:基于 JWT 的前后端分离认证方案

【用户认证篇】安全第一步:基于 JWT 的前后端分离认证方案

    • 前言
      • 什么是 JWT (JSON Web Token)?
      • 准备工作
      • 第一部分:后端 Django 配置 JWT 认证
        • 1. 安装 `djangorestframework-simplejwt`
        • 2. 在 `settings.py` 中配置 `djangorestframework-simplejwt`
        • 3. 在项目的 `urls.py` 中添加 JWT 相关的 URL 端点
        • 4. 创建用户注册 API
        • 5. 保护你的其他 API 端点
        • 6. 测试后端 JWT API
      • 第二部分:前端 Vue3 集成 JWT 认证
        • 1. 更新 Pinia `userStore` 以处理 JWT Token
        • 2. 更新 `LoginView.vue` 和创建 `RegisterView.vue`
        • 3. 更新 Axios 请求拦截器 (`utils/request.ts`)
        • 4. 更新路由守卫 (`router/index.ts`)
        • 5. 更新 `App.vue` (可选,但通常 `loadTokensFromLocalStorage` 放在这里也很好)
      • 第三部分:全面测试 JWT 认证流程
    • 总结

前言

到目前为止,我们的测试平台在功能上已经相对完善了,用户可以管理项目、模块、用例、计划,执行测试并查看报告。但是,这一切操作都是在“裸奔”——没有任何用户认证和权限控制。任何人都可以访问和操作所有数据,这在实际生产环境中是绝对不可接受的。

因此,本篇文章将聚焦于为我们的测试平台构建用户认证系统。我们将采用目前前后端分离架构中非常流行的 JWT (JSON Web Token) 认证方案。

在前后端分离的应用中,传统的基于 Session 的认证方式不再适用,因为前端和后端可能部署在不同的域,Session Cookie 的跨域共享会很麻烦。JWT 提供了一种无状态的、基于 Token 的认证机制,非常适合这种场景。

这篇文章将带你

  1. 理解 JWT 的基本概念和工作原理。
  2. 在 Django 后端集成 djangorestframework-simplejwt 库,实现用户注册、登录(获取 Token)、Token 刷新和验证的 API。
  3. 在前端 Vue3 应用中,调整登录流程以调用新的 JWT 认证 API。
  4. 使用 Pinia Store 存储和管理 JWT Token。
  5. 配置 Axios 请求拦截器ÿ

相关文章:

  • 浅谈控制器
  • Redis:介绍和认识,通用命令,数据类型和内部编码,单线程模型
  • Hive中ORC存储格式的优化方法
  • 11 - ArcGIS For JavaScript -- 高程分析
  • day38 6月5号
  • golang 如何定义一种能够与自身类型值进行比较的Interface
  • ignore文件不生效的问题
  • JVM垃圾回收器-ZGC
  • 【赵渝强老师】Docker的图形化管理工具
  • 行内样式:深入解析与应用指南
  • SpringCloud——OpenFeign
  • 大模型的开发应用(七):大模型的分布式训练
  • AtCoder-abc408_b 解析
  • snprintf函数用法及注意事项详解
  • 【鸿蒙在 ETS (Extendable TypeScript) 中创建多级目录或文件,可以使用鸿蒙的文件系统 API】
  • 力扣刷题Day 71:搜索旋转排序数组(33)
  • Win10、Win11系统,使用谷歌浏览器文件流下载,C盘剩余容量小于4GB时,下载失败问题
  • 我的创作纪念日——聊聊我想成为一个创作者的动机
  • 25.6.5学习总结
  • 风机下引线断点检测算法实现
  • 表格可以做网站么/关键词搜索排名怎么查看
  • 长沙企业官方网站建设/上优化seo
  • 网站备案有用/武汉百度百科
  • 沧州黄骅市贴吧/登封搜索引擎优化
  • 网站建设属于哪类税率/免费制作小程序平台
  • 网站做收录是什么意思/深圳百度seo公司