700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > laravel dingo/api添加jwt-auth认证

laravel dingo/api添加jwt-auth认证

时间:2023-12-30 09:17:57

相关推荐

laravel dingo/api添加jwt-auth认证

后端开发|php教程

laravel

后端开发-php教程

这篇文章主要介绍了关于laravel dingo/api添加jwt-auth认证,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

代理提取网站源码,vscode设置终端字体,ubuntu怎么隐藏,更改tomcat图像,sqlite3.ll丢失,哪些音乐网站可以爬虫,php文件测试,建瓯seo优化知识,拓展训练网站织梦模板,flash js电子图书翻书网页特效,dede view.php模板lzw

前面我们学了laravel dingo/api创建简单的api,这样api是开放给所有人的,如何查看和限制api的调用呢?可以用jwt-auth来验证,JSON Web Token Authentication

jsp投票网站源码,vscode 编程游戏,ubuntu系统键盘有时失灵,tomcat插件设置,sqlite 读取图片 慢,日期插件 移动,知乎不用前端框架,在线爬虫爬游戏,php短网址,seo竞价搜索seo教程,网站购物 联系我们的网页模板,织梦 网页路径发生改变,php企业官网模板下载,织梦cms 静态页面生成,角色管理系统代码,禾匠小程序商城商业版lzw

1,首先安装jwt-auth插件,在命令行中用composer安装

小猪crm系统源码下载,IPad能用VSCode嘛,如何整理ubuntu,cpu影响tomcat,sqlite3导入txt,从零开始学爬虫要多久,php 用户id,无锡自助建站seo,股票私募网站模板,免费jsp网页模板源码,html蓝色模板lzw

composer require tymon/jwt-auth .5.*

2,然后发布

php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\JWTAuthServiceProvider"

在/config/生成了一个jwt.php文件

3,生成key

php artisan jwt:generate

如果命令无法运行,可以在/config/jwt.php文件中修改changeme为自己设置的密匙

secret => env(JWT_SECRET, changeme),

4,修改/app/Api/Controllers/HelloController.php为

only(email, password); try { // attempt to verify the credentials and create a token for the user if (! $token = JWTAuth::attempt($credentials)) {return response()->json([error => invalid_credentials], 401); } } catch (JWTException $e) { // something went wrong whilst attempting to encode the token return response()->json([error => could_not_create_token], 500); } // all good so return the token return response()->json(compact( oken)); }}

5,添加路由(/routes/web.php)

$api->post(auth, App\Api\Controllers\HelloController@authenticate);

6,测试路由:php artisan api:routes,如果出现如下提示表示正确

访问url:***.com/api/auth显示错误,因为没加token

重新修改hellocontrol和loutes

only(email, password); try { // attempt to verify the credentials and create a token for the user if (! $token = JWTAuth::attempt($credentials)) {return response()->json([error => invalid_credentials], 401); } } catch (JWTException $e) { // something went wrong whilst attempting to encode the token return response()->json([error => could_not_create_token], 500); } // all good so return the token return response()->json(compact( oken)); } //添加user public function user() {JWTAuth::parseToken();$user = JWTAuth::parseToken()->authenticate();return $user; }}

name(home);$api = app(Dingo\Api\Routing\Router);$api->version(v1, function ($api) { $api->get(helloworld, App\Api\Controllers\HelloController@index); $api->post(auth, App\Api\Controllers\HelloController@authenticate); $api->get(auth, App\Api\Controllers\HelloController@user);});

用谷歌浏览器postman插件获取token,注意是post方法,步骤下图例

将获取的token复制,黏贴到第二步的用户验证token中,下图5中就是我们刚刚注册的用户

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。