Sanctum 与 Next.js 的认证

Laravel 官方有一个 Example,laravel-auth-api 和 breeze-next,但是没有写如何操作,所以我大概比对了下,复刻到已有的项目,并把步骤记录起来。

路由

复制 routes/auth.php 到 web.php

session 表

  1. .env 中,SESSION_DRIVER=file 改为 database

  2. 复制 database/migrations/2022_09_03_155542_create_sessions_table.php

  3. 执行迁移

认证方法

  1. config/auth.php 中的 defaults guard 由 sanctum 改为 web

  2. 复制

  • app/Http/Controllers/Auth 下的文件
  • app/Http/Requests/Auth/LoginRequest.php
  1. app/Http/Kernel.php 中的 $routeMiddleware 添加 'auth.session' => \Illuminate\Session\Middleware\AuthenticateSession::class,

中间件

  1. 复制
  • app/Http/Middleware/Auth 下的文件
  • app/Http/Middleware/EnsureEmailIsVerified.php
  • app/Http/Middleware/ValidateSignature.php
  1. app/Http/Kernel.php 中的
use  Illuminate\Routing\Middleware\ValidateSignature;
use  Illuminate\Auth\Middleware\EnsureEmailIsVerified;
# 改为
use  App\Http\Middleware\EnsureEmailIsVerified;
use App\Http\Middleware\ValidateSignature;
本作品采用《CC 协议》,转载必须注明作者和本文链接
无论在现实或是网络中,我都是孤独的。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!