waqar/apiauthentication

一个简单的修改过的API身份验证

1.0 2023-05-12 14:38 UTC

This package is auto-updated.

Last update: 2024-09-12 17:57:27 UTC


README

这是一个Laravel包,使用Laravel Passport提供易于使用的API身份验证。该包包含预构建的控制器、中间件和路由,用于注册用户、用户身份验证以及发送邮件和电话号码的验证码。

特性

  • 注册新用户
  • 验证现有用户
  • 预构建的控制器和路由,易于集成到您的Laravel应用程序中
  • 通过邮件和电话号码发送验证码

安装包

要安装此包,请运行以下命令

composer require waqar/apiauthentication

安装Laravel Passport

composer require laravel/passport

接下来,您应该执行passport:install Artisan命令

php artisan passport:install

最后,在您的应用程序的config/auth.php配置文件中,您应该定义一个api身份验证守卫,并将driver选项设置为passport。这将指示您的应用程序在验证传入的API请求时使用Passport的TokenGuard

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

有关更多信息,请访问以下链接: Laravel Passport

配置文件

  1. 将服务提供者添加到app/config/app.php
waqar\apiauthentication\ApiAuthenticationServiceProvider::class,

步骤2:设置数据库配置

在成功安装Laravel应用程序后,然后配置数据库设置。我们将打开".env"文件,并在env文件中更改数据库名称、用户名和密码。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=Enter_Your_Database_Name
DB_USERNAME=Enter_Your_Database_Username
DB_PASSWORD=Enter_Your_Database_Password

现在,运行以下命令进行迁移

php artisan migrate

在Laravel .env文件中配置发送者邮件地址

.env文件
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=587
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=TLS

创建Twilio账户

首先您需要创建并添加电话号码,然后您可以轻松获取账户SID、令牌和号码。

从这里创建账户:www.twilio.com

接下来添加Twilio电话号码

接下来,您可以获取账户SID、令牌和号码,并将其添加到以下.env文件中

.env

TWILIO_ACCOUNT_SID=XXXXXXXXXXXXXXXXX
TWILIO_AUTH_TOKEN=XXXXXXXXXXXXX
TWILIO_NUMBER=+XXXXXXXXXXX

用法

该包包含预构建的控制器和路由,用于注册用户和验证用户。要使用这些功能,请简单地将包的路由包含到您的Laravel应用程序的routes/api.php文件中

然后您可以对以下端点进行API请求

  • /api/register:注册新用户
  • /api/login:验证现有用户并获取访问令牌
  • /api/sendOtpEmail:通过邮件发送验证码
  • /api/sendOtpPhoneNumber:通过电话号码发送验证码
  • /api/verifyOtp:验证验证码

注意

请将Accept:application/json添加到请求头中