Laravel 11 REST API Authentication认证使用Sanctum插件教程

在本教程中,我们将通过使用Sanctum应用程序开发完整的Laravel 11 REST API身份验证以及简单的分步指南来了解使用Sanctum身份验证的Laravel 11 REST API
我们将从头开始学习APIREST APILaravel Sanctum,并创建一个示例API

API是什么?

API(应用程序编程接口)只是两个或多个计算机程序之间的一种通信方式。
API还用于Web和移动应用程序开发;因此,构建REST API对于任何Web和移动应用程序开发人员来说都非常重要。

Laravel Sanctum是什么?

Laravel SanctumLaravel应用程序的API身份验证包,为单页应用程序(SPA)、移动应用程序和其他API驱动的项目提供轻量级、简单易用的身份验证系统。它使用JSON Web令牌(JWT) 或API令牌提供基于令牌的身份验证,从而实现安全身份验证,而无需传统基于会话的身份验证的开销。Sanctum简化了令牌身份验证的设置,使开发人员能够专注于构建他们的应用程序,而不是处理身份验证的复杂性。
我们将使用Laravel Sanctum,这是一个身份验证系统包,用于为SPA(单页应用程序)开发简单的API,这些API 通常通过React JSAngularVue JS构建。
在此示例中,我们将安装Laravel 11应用程序。然后,我们将安装用于API身份验证的Sanctum composer包。之后,我们将创建用于用户身份验证的注册和登录API。然后,我们将创建一个产品REST API,并且您必须使用用户令牌进行身份验证。因此,让我们按照以下步骤逐步完成此示例:

按照以下步骤在Laravel 11应用程序中创建RESTful API完整示例。

第一步 安装Laravel 11

如果已经安装可以忽略;如果您尚未创建Laravel应用程序,则可以继续执行以下命令:

composer create-project laravel/laravel example-app

第二步 安装组件Sanctum API

Laravel 11中,默认情况下,我们没有api.php路由文件。因此,您只需要运行以下命令即可安装带有api.php文件的Sanctum

php artisan install:api

第三步 配制Sanctum文件

在此步骤中,我们必须配置三个位置:模型、服务提供商和身份验证配置文件。因此,您只需要在这些文件中进行以下更改:
在模型中,我们添加了SanctumHasApiTokens类。
auth.php中,我们添加了API身份验证配置。

app/Models/User.php

<?php
  
namespace App\Models;
  
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens;
  
class User extends Authenticatable
{
    use HasApiTokens, HasFactory, Notifiable;
  
    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = [
        'name',
        'email',
        'password',
    ];
  
    /**
     * The attributes that should be hidden for serialization.
     *
     * @var array
     */
    protected $hidden = [
        'password',
        'remember_token',
    ];
  
    /**
     * Get the attributes that should be cast.
     *
     * @return array
     */
    protected function casts(): array
    {
        return [
            'email_verified_at' => 'datetime',
            'password' => 'hashed',
        ];
    }
}

第四步 添加Product TableProduct模型

接下来,我们需要使用laravel artisan命令为products表创建迁移。因此,首先,执行以下命令:

php artisan 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值