Laravel 7自定义身份验证不起作用

时间:2020-09-02 03:22:47

标签: php laravel-7

我正在尝试在Laravel 7应用程序中进行自定义身份验证。参考官方文档,我应该在LoginController中添加一个公共函数authenticate(),所以我尝试了它:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;

class LoginController extends Controller
{
    /**
     * Handle an authentication attempt.
     *
     * @param  \Illuminate\Http\Request $request
     *
     * @return Response
     */
    public function authenticate(Request $request)
    {
         eval(\Psy\sh()); //console debug line

        $credentials = $request->only('email', 'password');

        if (Auth::attempt($credentials)) {
            // Authentication passed...
            return redirect()->intended('dashboard');
        }
    }
}

但是似乎该功能未在登录时运行。我通过添加调试行eval(\Psy\sh());进行了测试,但是它没有运行。 知道如何使函数运行吗?

1 个答案:

答案 0 :(得分:0)

错误在这里...

public function authenticate(Request $request)

Laravel 7.x版本内置的身份验证不包含LoginController.php内部的身份验证方法

所以请用以下经过认证的产品替换它。

public function authenticated(Request $request)
{
    $credentials = $request->only('email', 'password');
    if (Auth::attempt($credentials)) {
        return redirect()->intended('dashboard');
    }
}