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

为何将Cookie名从authToken改为token可解决Laravel-JWT认证问题?

问题解答

核心原因:Tymon/jwt-auth的默认配置规则

Tymon/jwt-auth包默认只会从名为token的Cookie里读取JWT令牌,这是它预设的读取逻辑。你把Cookie名称改成authToken后,包找不到对应的令牌数据,自然auth()->user()拿不到用户信息,接口就返回“未认证”了。

自定义Cookie名称的方法

要是想用authToken这类自定义名称,得修改jwt-auth的配置:

  • 先发布配置文件(没发布过的话):
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"
  • 打开config/jwt.php,找到cookie项,把值改成你要的名称:
'cookie' => 'authToken',
  • 最后保证登录接口里设置的Cookie名称和这个配置一致,auth门面就能正确从Cookie里取令牌了。

Laravel与React的令牌识别逻辑

不存在Laravel或React自动识别令牌的通用命名规则,核心是前后端认证配置要匹配:

  • Laravel端:全靠jwt-auth的配置项指定Cookie名称来提取令牌
  • React端:只要请求时开启withCredentials: true让浏览器自动携带Cookie,不管Cookie叫什么,只要和后端配置对应就能正常认证

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 17:53:30