laravel使用api认证

首先在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

写到这里代码部分完成,接下来测试一下
访问:域名/api/test_token会提示401错误,未设置token


image.png

访问:域名/api/test_token?api_token=111111 返回OK

image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容