首先在user表中新建一个api_token
字段:
$table->string('api_token', 60)->unique();
image.png
在user表中加入一个用户,只要保证api_token为111111就好
image.png
接下来在api.php路由中加入以下代码
Route::group(['middleware' => ['auth.api']], function () {
Route::get('/test_token', function () {
return 'ok';
});
});
image.png
可以看到用到了一个中间件,中间件是需要注册的。接下来注册一个中间件
在Kernel.php
中,加入以下代码
'auth.api' => \App\Http\Middleware\webToken::class,//api登录中间件
image.png
接下来注册一个webToken的中间件
php artisan make:middleware webToken
打开编辑
public function handle($request, Closure $next)
{
if (\auth('api')->guest()) {
return response()->json(['code' => 401,'msg' => '未设置token']);
}
return $next($request);
}
image.png
auth('api')被用到了,那接下来我们修改一下配置文件config->auth.php
image.png
image.png
image.png
写到这里代码部分完成,接下来测试一下
访问:域名/api/test_token会提示401错误,未设置token
image.png
访问:域名/api/test_token?api_token=111111 返回OK
image.png