gpt4 book ai didi

authentication - 拉维尔 5.2 : Login "attempt" Event Handling

转载 作者:行者123 更新时间:2023-12-04 04:34:21 24 4
gpt4 key购买 nike

在 Laravel 5.2 中,我需要在 身份验证过程被触发时做一些事情。 (不是“登录后”。)

这是我所做的。

EventServiceProvider.php 中:

protected $listen = [
'Illuminate\Auth\Events\Attempting' => ['App\Listeners\UserLoginAttempt@handle'],
];

app/Listeners/UserLoginAttempt.php 中:

<?php
namespace App\Listeners;

use Illuminate\Http\Request;
use Illuminate\Auth\Events\Login;
use Carbon\Carbon;
use Auth;

class UserLoginAttempt
{
public function __construct()
{

}

public function handle($event)
{
dd(Auth::user());
exit;
}
}

这总是返回 null

** 事实上,我在登录表单中有一个“自定义”字段,我需要从上面的事件处理程序中捕获它。 (我需要在 实际登录事件完成之前检查一些内容。)

  • 我如何从这个 (Illuminate\Auth\Events\Attempting) 处理程序中捕获 Auth::user()
  • (换句话说)我如何与来自 (Illuminate\Auth\Events\Attempting) 处理程序的登录表单对话?
  • 或 ----- Auth::user() 对象是否仅在登录完全处理后创建?这意味着我在“尝试”阶段无法获得它?

因为我需要先捕获登录元素,如果它是“未授权”的东西(在处理程序中完成一些计算之后),那么我需要终止登录尝试并从此处路由回登录表单。通过携带失败消息。

请让我知道我在这里缺少什么。谢谢。

最佳答案

根据 documentation您是对的,Auth::user() 对象仅在用户通过身份验证时创建。

关于authentication - 拉维尔 5.2 : Login "attempt" Event Handling,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37162279/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com