Laravel5.4简单实现了app接口的Api Token认证方法
我是小白。我今天写这篇文章主要是为了初学者学习,所以不需要看。有很多不足,希望大家能指出来,共同进步。
在开发中,许多API通常需要某种形式的身份验证才能返回响应。有时,经过身份验证的请求和未经身份验证的请求可能有不同的响应。
在web项目中,很容易实现认证,那么在前端和后端分离的项目中,如何实现认证呢?今天,本文使用的是API令牌认证机制,令牌可以解决laravel API的无状态认证。
1.将api_token字段添加到用户表
Php artisan make:迁移add _ api_token _ to _ users首先,将api_token字段添加到用户表,并将字段添加到生成的迁移文件:
?php使用照亮\支持\门面\模式;使用照亮\数据库\模式\蓝图;使用照明\数据库\迁移\迁移;类AddApiTokenToUsers扩展了迁移{ /** *运行迁移。* * @ return void */public function up(){ schema : table(' users ',function(蓝图$ table){ $ table-string(' API _ token ',64)-unique();});} /** *反转迁移。* * @ return void */public function down(){ schema : table(' users '、function(蓝图$ table){ $ table-DropColumn([' API _ token ']);//新增});}}其次,使用以下命令向表中添加字段:
Php工匠迁移三。用户注册:
向创建注册控制器文件的用户添加api_token字段:
我这里的控制器是app \ http \ controllers \ API \ registercontroller.php。
受保护的函数寄存器(Request $ Request){ $ input=$ Request-all();//获取传输的号码。//在此设置生成的令牌,并将其与帐户密码和其他信息一起保存在User表$ user=user33603360create ($ data)中。//保存在数据库中返回$ token//这里的逻辑是我自己写的。这里只是一个简单的实现。}最后,别忘了在App\User.php用户模型表的$fillable属性中添加api_token字段:
/** *可批量分配的属性。* * @ var array */protected $ fill able=[' name ',' email ',' password ',' confirmation_token ',' API _ token '];四.修改api驱动程序:
接下来,在config\auth.php中修改以下内容:
guards '=[' web '=[' driver '=' session ',' provider'=' users ',],' API'=['driver'=' token ',//将驱动程序设置为token 'provider'='users ',],]v .如何使用
接下来,我们要添加路由,并在routes\api.php文件中修改它们:
route :3360 group(['中间件'='令牌'],function(){ route : post(' register ',' API \[email protected]');});如何访问?这里我们用邮递员来测试:
你到了那里就完了!注意这只是基本的认证,最好使用其他人开发的插件,比如oAuth2、basic、jwt、Passport等。
哦,对了,如果你想看token的认证原理,我们可以看看他的底层源代码
供应商\ laravel \框架\ src \照明\授权\令牌卫士. php:
这个我也看不懂,哈!再见!
以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。
版权声明:Laravel5.4简单实现了app接口的Api Token认证方法是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。