适配SPA及Sanctum令牌RESTful API的Laravel最佳入门套件咨询
Laravel 面向移动端/SPA的Sanctum认证API项目入门套件选择
最匹配你需求的是Laravel Breeze的API专用安装变体,你之前觉得Breeze和Sanctum不适配,是因为安装了默认的全栈Blade版本,而非API专属版本。
安装与适配说明
执行以下命令安装即可获得开箱即用的适配骨架:
composer require laravel/breeze --dev php artisan breeze:install api
安装完成的骨架自带以下适配能力:
- 预集成并配置好了Laravel Sanctum,同时支持两种认证模式:SPA场景下的基于Cookie的安全会话认证、移动端场景下的Bearer令牌认证,不需要手动编写认证驱动适配代码
- 内置了注册、登录、登出、密码重置、邮箱验证的全套JSON格式API接口,无冗余Blade视图或前端框架依赖,完全匹配纯API开发场景
- 默认做好了认证异常、校验异常的JSON返回格式适配,不会出现接口报错返回HTML页面的问题
- 路由文件、认证中间件配置都已初始化完成,业务接口直接在
routes/api.php中编写,需要鉴权的接口挂载auth:sanctum中间件即可正常使用
备选方案说明
不建议选择Laravel Jetstream作为入门套件:它默认绑定了团队管理、个人资料前端页面、双因素认证交互等大量全栈场景的冗余功能,纯API开发场景下会残留大量无用代码,后续清理成本较高。
基础配置注意事项
- 部署前修改
config/sanctum.php中的stateful配置项,加入你的SPA应用域名,保证SPA侧的Cookie认证可以正常通过校验 - 移动端登录成功后,直接调用用户模型的
createToken('设备标识')方法签发令牌,将返回的plainTextToken字段内容交给移动端本地存储,后续请求放在Authorization请求头中携带即可完成鉴权
内容的提问来源于stack exchange,提问作者Lana Hanna
相关产品推荐
相关产品推荐

