advancelearn/otp-auth

从客户端生成一个字段的otp,创建otp后可以检查是否为有效令牌

2.1.1 2023-09-11 10:07 UTC

This package is auto-updated.

Last update: 2024-09-11 12:39:53 UTC


README

#Advancelearn Otp-auth

advancelearn-otp-auth

Latest Stable Version Total Downloads Latest Unstable Version License PHP Version Require

介绍

欢迎使用AdvanceLearn学院的第一款包。在这个包中,我们试图让你更容易地创建一个验证码,并在收到代码和令牌后,通过短信或电子邮件将其发送给用户以填写表格。验证用户输入此令牌,然后我们将验证令牌与您发送的用户名进行匹配,并将结果返回给您。

安装

您可以使用Composer安装此包。

composer require advancelearn/otp-auth

使用方法

advancelearn/otp-auth,只需从包的主类创建一个对象,并在第一步中调用与创建令牌相关的函数,并将用户名发送给它。

创建 advancelearn/otp-auth 的新对象

并调用 generateToken 方法:

$package = new OtpHandlerAdvancelearn();

将包的命名空间添加到您的PHP类顶部

use Advancelearn\OtpAuth\OtpHandlerAdvancelearn;

现在调用 generateToken 方法,并传入生成新令牌的数据,并设置otp代码的缓存时间

$username = request()->input('username');
$token = $package->generateToken(['username' => $username , 'time' => 3]);

用户名可以是用户的电子邮件或手机号码

在本节中,您已经收到代码。现在,根据您的项目场景,您可以发送验证码给用户,并在下一步接收用户发送的令牌,并将其发送到包的验证方法进行准确性检查

$token = request()->input('token');
 return $package->verify(['token' => $token , 'username' => $username]);

//example output: If the token is correct than the user's username
{
    "success": "Token is verified you can register or logged in user",
    "status": true
}

结论

使用这个名为 advancelearn/otp-auth 的高级学习包,您可以轻松发送用户名并接收令牌,而且您不用担心在数据库中创建或保存令牌,因为根据您给出的时间,用户名的令牌可以轻松缓存。在第二步中,对请求的用户名应用令牌验证,根据这一点,您可以成功在系统中注册用户或将用户直接引导到重发代码页面。