中间件认证错误如何解决?
How to solve Middleware authentication error?
当我尝试登录或注册或尝试访问受限制的页面时显示此错误。
如何解决这个错误?
Declaration of App\Http\Middleware\Authenticate::handle($request, Closure $next) must be compatible with Illuminate\Auth\Middleware\Authenticate::handle($request, Closure $next, ...$guards)
这是/app/Http/Middleware/Authenticate.php代码:
<?php
namespace App\Http\Middleware;
use Illuminate\Auth\Middleware\Authenticate as Middleware;
use Closure;
use Auth;
class Authenticate extends Middleware
{
public function handle($request, Closure $next)
{
if (Auth::check()) {
return $next($request);
}
return redirect()->route('user.login');
}
}
原方法的原型(Middleware::handle()
)是handle($request, Closure $next, ...$guards)
,你的应该也是这样吧。如果你不需要那些$guards
,你可以不使用它们,但它们必须在原型中。
<?php
namespace App\Http\Middleware;
use Illuminate\Auth\Middleware\Authenticate as Middleware;
use Closure;
use Auth;
class Authenticate extends Middleware
{
public function handle($request, Closure $next, ...$guards)
{
if (Auth::check()) {
return $next($request);
}
return redirect()->route('user.login');
}
}
当我尝试登录或注册或尝试访问受限制的页面时显示此错误。 如何解决这个错误?
Declaration of App\Http\Middleware\Authenticate::handle($request, Closure $next) must be compatible with Illuminate\Auth\Middleware\Authenticate::handle($request, Closure $next, ...$guards)
这是/app/Http/Middleware/Authenticate.php代码:
<?php
namespace App\Http\Middleware;
use Illuminate\Auth\Middleware\Authenticate as Middleware;
use Closure;
use Auth;
class Authenticate extends Middleware
{
public function handle($request, Closure $next)
{
if (Auth::check()) {
return $next($request);
}
return redirect()->route('user.login');
}
}
原方法的原型(Middleware::handle()
)是handle($request, Closure $next, ...$guards)
,你的应该也是这样吧。如果你不需要那些$guards
,你可以不使用它们,但它们必须在原型中。
<?php
namespace App\Http\Middleware;
use Illuminate\Auth\Middleware\Authenticate as Middleware;
use Closure;
use Auth;
class Authenticate extends Middleware
{
public function handle($request, Closure $next, ...$guards)
{
if (Auth::check()) {
return $next($request);
}
return redirect()->route('user.login');
}
}