昨天我们完成了登入
接者今天我们来看看token可以做什麽用吧!
前端跟後端沟通时
我们就像拿者一个身分证(Token)
有了这个token才可以认证使用者身分让你进入服务当中
那当然拿者这个证件才可以离开一些有管制门禁的公司(例如竹科新贵离开刷卡管制)
这个就像我们拿token做登出的机制喔
在app/http/controllers/AuthController.php里面
public function user(Request $request)
{
return response($request->user());
}
这边我们如果有带入JWT token即可回传user物件
接者我们修改routes/web.php里面
Route::middleware(['auth:api'])->group(function () {
Route::get('user','AuthController@user');
});
// Route::group(['middleware'=>'auth:api'],function(){
// Route::get('user','AuthController@user');
// });
两种写法都可以喔!!
这边意思是我们在第二个callback function中
可以看到
後面可以条列许多新的路由
middleware => auth:api 中间层可以使用auth里面的来过滤掉是否有携带token
middleware就像是我们的过滤器 或是高速公路的收票站一样
接者来测试一下
这支API就可以透过JWT Token取得该user物件
小提示这边我们要带token先选择 Authorization 再点Bearer Token
再把我们昨天login产生的token的贴上去
在app/http/controllers/authcontroller.php
public function logout(Request $request)
{
$request->user()->token()->revoke();
return response(['message' => '登出成功'] , 200);
}
新增这个function
revoke会在资料库里面注记revoke
也就是注销掉这个token效力不会真的删除喔
在routes/web.php
Route::middleware(['auth:api'])->group(function () {
Route::get('user','AuthController@user');
Route::delete('logout','AuthController@logout');
});
我们这边可以用http的delete method来做logout
成功画面
我们来用workbench 来看资料库情况吧
这边我们可以看到登出会注记revoke
今天我们使用了middleware跟介绍了token使用方法
明天再看看要继续做什麽
希望可以在20天内把user这块做完
我们来做商品最後再把永丰订单api接完吧
<<: 原来产品也有自己的生命历程 Product Life Cycle
>>: Day14:终於要进去新手村了-Javascript-判断式基本结构-switch
经过Day02的流程,我们已经可以使用Windows内建的文字编辑器搭配「命令提示字元」进行pyth...
为什麽选择 heroku google 的服务下面有 google cloud 可以部属 api,但...
沟通不良的代价就是彼此越来越疏远,然後行同陌路如陌生人。 子元件之间就像兄弟一样的关系,所以这篇要...
今天原本想开始抓个股的kbar资料及後续处理,结果在清洗Contract资料时,发现抓出来的TSE+...
前面讲了一对现在怎又多了CLI? CLI有事要干嘛的? 在之前我们写Vue时都是用vue.js和&l...