iamnotstatic/laravel-api-auth

一个用于轻松设置Laravel API认证的passport包

v1.0.2 2020-04-10 16:44 UTC

This package is auto-updated.

Last update: 2024-09-11 02:44:53 UTC


README

GitHub issues GitHub stars GitHub license Total Downloads

简介

一个用于轻松设置Laravel API认证的passport包

安装

要获取Laravel Api Auth的最新版本,只需要求它即可

composer require iamnotstatic/laravel-api-auth

配置

您可以使用此命令发布配置文件

php artisan vendor:publish --provider="Iamnotstatic\LaravelAPIAuth\LaravelAPIAuthServiceProvider"

安装包后迁移数据库

php artisan migrate

此命令将创建生成安全访问令牌所需的加密密钥。此外,该命令还将创建“个人访问”和“密码授权”客户端,这些客户端将用于生成访问令牌

php artisan passport:install

接下来,您应该在AuthServiceProvider的boot方法中调用Passport::routes方法。此方法将注册发行访问令牌和撤销访问令牌、客户端和个人访问令牌所需的路由

<?php

namespace App\Providers;

use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use Illuminate\Support\Facades\Gate;
use Laravel\Passport\Passport;

class AuthServiceProvider extends ServiceProvider
{
    /**
     * The policy mappings for the application.
     *
     * @var array
     */
    protected $policies = [
        'App\Model' => 'App\Policies\ModelPolicy',
    ];

    /**
     * Register any authentication / authorization services.
     *
     * @return void
     */
    public function boot()
    {
        $this->registerPolicies();

        Passport::routes();
    }
}

在您的config/auth.php配置文件中,您应该将api认证保护器的driver选项设置为passport。这将指示您的应用程序在认证传入的API请求时使用Passport的TokenGuard

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],

    'api' => [
        'driver' => 'passport',
        'provider' => 'users',
    ],
],

在您的config/auth.php配置文件中,您应该设置包模型的model选项。这将提供一些辅助方法,允许您检查认证用户的令牌和作用域

'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => Iamnotstatic\LaravelAPIAuth\Models\User::class,
        ],

        // 'users' => [
        //     'driver' => 'database',
        //     'table' => 'users',
        // ],
    ],

用法

现在,我们可以使用rest客户端工具(Postman)简单测试,所以我进行了测试,您可以看到下面的截图。

在此API中,您必须设置以下两个标题

Accept: application/json

pkg imgs

注册

register

登录

login

登出

logout

获取用户

getuser

忘记密码

forgottenpass

重置密码

passwordreset

贡献

请随意fork此包,并通过提交pull request来贡献,以增强功能。

我该如何感谢您呢?

为什么不星标GitHub仓库呢?我非常希望得到关注!为什么不分享此仓库的链接到Twitter或HackerNews?传播这个消息吧!

别忘了在twitter上关注我

谢谢!Abdulfatai Suleiman。

许可

MIT许可证(MIT)。有关更多信息,请参阅许可文件