手机注册无法创建用户
参考L3和H4章节,准备做一个网页端手机注册功能,图形验证码和短信验证码发送都没有问题,但是最后提交注册的时候,只是界面刷新了一下,也没有报出什么错误,不知道是什么原因,所以请教一下各位
路由route('users.store')
的注册访问控制器如下
class UsersController extends Controller
{
public function store(UserRequest $request)
{
$verifyData = Cache::get($request->verification_key);
if (!$verifyData) {
abort(403, '验证码已失效');
}
if (!hash_equals($verifyData['code'], $request->verification_code)) {
// 返回401
throw new AuthenticationException('验证码错误');
}
$name = '用户' + Str::random(8);
$user = User::create([
'name' => $name,
'phone' => $verifyData['phone'],
'password' => Hash::make($request->password),
]);
// 清除验证码缓存
Cache::forget($request->verification_key);
return redirect()->route('root');
}
}
已经解决,由于
UserRequest
文件中含有verification_key
字段,但是注册页面没有这个字段,所以只需要添加一个<input type ="hidden" name="verification_key">
,在请求route('VerificationCode.store')
短信验证码的时候,把值赋给它就可以注册用户