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

React应用POST /refresh接口无法获取refresh_token Cookie问题

React登录刷新逻辑中refresh_token失效,req.cookies为空的解决方案

问题背景

  • 技术栈:React + Vite,前端部署在http://localhost:5173
  • 服务架构:主服务server.js运行在8080端口,认证服务authServer.js运行在8081端口
  • 问题现象:
    • 登录刷新逻辑在Postman中测试正常,但React应用内出现异常
    • 认证服务/refresh接口收到的req.cookies始终是空对象{},返回401未授权状态码
    • 登录后刷新页面,/refresh接口响应信息如下:
      bodyUsed: false
      headers: Headers {}
      ok: false
      redirected: false
      status: 401
      statusText: "Unauthorized"
      type: "cors"
      url: "http://localhost:8081/refresh
      
  • 涉及文件:authServer.js、AuthContext.jsx、ProtectedRoutes.jsx

解决方案

在前端发起的/users/login请求配置中添加credentials: "include"。

原因说明

跨域场景下,浏览器默认不会自动携带Cookie等凭证信息。添加credentials: "include"后,浏览器会在跨域请求中携带Cookie,认证服务才能通过req.cookies获取到refresh_token,进而完成刷新令牌的逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 17:42:02