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

Laravel 8+Sanctum自定义包中Axios请求未携带Cookie排查

Laravel Sanctum请求未携带Cookie的排查要点
  • 检查Sanctum状态域配置
    在config/sanctum.php的stateful数组中,必须包含前端完整域名(含端口),默认配置仅包含localhost和127.0.0.1,端口不匹配会导致Cookie无法携带。可通过.env的SANCTUM_STATEFUL_DOMAINS批量设置,注意不要加http://或https://前缀:

    'stateful' => explode(',', env('SANCTUM_STATEFUL_DOMAINS', 'localhost,127.0.0.1,localhost:3000')),
    
  • 确认Session域名配置
    在config/session.php的domain项中,需设置为覆盖前后端的统一域名。若为同主域下的子域名,需添加前缀点(如.example.com);本地开发可直接设为localhost:

    'domain' => env('SESSION_DOMAIN', 'localhost'),
    

    同步更新.env中的SESSION_DOMAIN配置。

  • 修正CORS配置
    在config/cors.php中必须开启凭证支持,同时避免allowed_origins使用通配符*(与supports_credentials冲突),并确保允许必要请求头:

    'supports_credentials' => true,
    'allowed_origins' => [env('FRONTEND_URL', 'http://localhost:3000')],
    'allowed_headers' => ['X-Requested-With', 'Content-Type', 'Authorization'],
    
  • 验证自定义用户模型配置
    确保CmsUser模型正确引入HasApiTokens trait,同时在config/auth.php中配置对应守卫与用户提供者:

    // CmsUser模型代码
    use Laravel\Sanctum\HasApiTokens;
    
    class CmsUser extends Authenticatable
    {
        use HasApiTokens, HasFactory, Notifiable;
        // ...
    }
    
    // config/auth.php配置
    'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'cms_users',
        ],
        'sanctum' => [
            'driver' => 'sanctum',
            'provider' => 'cms_users',
        ],
    ],
    'providers' => [
        'cms_users' => [
            'driver' => 'eloquent',
            'model' => App\Packages\YourPackage\Models\CmsUser::class,
        ],
    ],
    
  • 确认Axios全局配置生效
    需在前端入口文件全局配置Axios,避免仅在单个请求中设置导致失效:

    import axios from 'axios';
    
    axios.defaults.withCredentials = true;
    axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
    
  • 检查请求域名一致性
    前端请求的后端域名需与Cookie所在域名完全一致(包括IP/域名、端口),例如不能混用localhost:8000和127.0.0.1:8000,否则浏览器会视为跨域而拒绝携带Cookie。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 06:33:26