在Laravel Spark中工作并拥有一个自定义API端点,用于检查用户凭据但不记录用户凭据,只返回用户数据。
我有一个表单请求,检查所需的电子邮件和密码,然后使用
withValidator()
对密码进行更多验证。
public function rules()
{
return [
'email' => 'required|email|exists:users',
'password' => 'required'
];
}
public function withValidator($validator)
{
$validator->after(function ($validator) {
$user = User::where('email', $this->email)->first();
if ( $user && !Hash::check($this->password, $user->password) ) {
$validator->errors()->add('password', 'Incorrect password');
} else {
// Pass the user to the controller
}
});
}
在我的控制器中,我希望能够返回用户,但我不想完成检查哈希等过程。
我只想做到:
return $request->user
或类似。
有办法做到这一点吗?
答案 0 :(得分:0)
为什么不在控制器中执行此操作?
$user = User::where('email', $request->email)->first();
如果你把它放在验证器之后,你已经知道用户是有效的,否则验证器会在到达那一点之前失败。