You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DRF+Firebase+react-admin应用登录后返回401未授权问题求助

DRF + react-admin + Firebase 认证401秒退问题排查方案

后端DRF侧排查点

  • 校验Firebase ID Token的逻辑是否符合官方要求:必须使用Firebase Admin SDK的verify_id_token()方法完成校验,禁止自行解析JWT。重点检查是否校验了exp(过期时间)、aud(受众)、iss(签发者)三个核心字段,任一字段校验不通过都会直接返回401。
  • 检查本地用户关联逻辑:校验token拿到uid后,是否正确关联了Django本地的用户表,关联的用户是否存在、是否激活、是否具备接口访问权限。
  • 检查认证类配置:确认接口的认证类是否正确读取Authorization: Bearer <token>请求头,有没有出现请求头字段名写错、Bearer大小写错误、空格缺失的问题。

前端react-admin侧排查点

  • 检查authProvider的checkAuth方法逻辑:react-admin会在路由切换、接口请求前自动调用该方法校验会话,确认该方法是否只校验了uid存在,遗漏了token有效性校验;或者本地存储的token被意外清空导致校验不通过触发登出。
  • 检查请求拦截器逻辑:确认所有发往后端的请求都正确携带了Firebase返回的最新ID Token。Firebase ID Token默认有效期仅1小时,若未配置onIdTokenChanged监听实现token自动刷新,token过期后所有请求都会返回401。

快速验证手段

  • 将登录后拿到的ID Token复制到本地解析,查看exp字段对应的时间是否正确,若刚生成的token就已过期,大概率是本地设备时间和服务器时间偏差过大导致。
  • 在DRF的认证逻辑中添加全链路日志,打印前端传入的token、校验过程的报错信息、权限判断结果,可直接定位是校验失败还是权限逻辑错误。

内容的提问来源于stack exchange,提问作者MomchilovP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 20:39:00