如果我按照这个问题的答案:
Add recaptcha to default Laravel Password Reset
并将以下函数添加到ForgotPasswordController以覆盖Trait中的验证
protected function validateEmail(Request $request)
{
$this->validate($request, ['email' => 'required|email',
'g-recaptcha-response' => 'required|captcha',
]);
}
我收到以下错误:
类型错误:传递给App \ Http \ Controllers \ Auth \ ForgotPasswordController :: validateEmail()的参数1必须是App \ Http \ Controllers \ Auth \ Request的实例,给出Illuminate \ Http \ Request的实例
但是,如果我通过将以下内容添加到validateEmail函数来直接修改SendPasswordResetEmails特征:
'g-recaptcha-response' => 'required|captcha',
验证时需要reCAPTCHA,密码重置表单可以正常工作 . Problem is, I know you are not supposed to modify Traits directly.
我需要做什么才能在密码重置表单上要求reCAPTCHA?
1 回答
我需要在控制器中添加以下内容: