Laravel Auth 使用Http Basic Authenticate基本认证,不使用数据库
首先
先创建一个自定义的中间件auth basic认证
使用laravel artisan
例如名称为:HttpBasicAuth
,
HttpBasicAuth这个名称自定义
在cmd里执行
php artisan make:middleware HttpBasicAuth
创建成功之后在这个目录里
app\Http\Middleware\HttpBasicAuth.php
打开HttpBasicAuth.php
把代码改成如下
拟定
账号为admin
密码为123456
可以把账号密码存入.env
文件里,我为了方便直接就写在了中间件文件里了
public function handle(Request $request, Closure $next)
{
if ($request->getUser() != 'admin' || $request->getPassword() != '123456') {
$headers = array('WWW-Authenticate' => 'Basic');
return response('Unauthorized', 401, $headers);
}
return $next($request);
}
然后在配置路由
web.php
这是laravel 8.x的路由写法
例如
Route::get('/', [IndexController::class, 'index'])->middleware([\App\Http\Middleware\HttpBasicAuth::class]);
不出意外的话,
打开页面将会弹出一个窗,
如有意外请拨打114。
参考:
https://stackoverrun.com/cn/q/12087571
https://laravel.com/docs/8.x/middleware#assigning-middleware-to-routes