我正在研究和在数据库中注册信息,出于好奇,我进行了测试以直接通过URL访问注册路由,并且遇到以下错误“此路由不支持GET方法。受支持的方法:POST。”。您如何保护我免受这个错误的侵害?
观看路线:
Route::get('/cadastro', 'UserController@index');
行动路线表:
Route::post('/cadastrar', 'UserController@cadastrar');
表格:
<form method="post" action="{{url('cadastrar')}}">
@csrf
<input type="text" id="name" name="name" placeholder="Usuário">
<input type="email" id="email" name="email" placeholder="email">
<input type="password" id="password" name="password" placeholder="senha">
<input type="submit" value="Cadastrar">
</form>
控制器的方法寄存器:
public function cadastrar(Request $request){
$validatedData = $request->validate([
'name'=>'required',
'password' =>'required'
]);
$user = new User();
$user->name = $request->input('name');
$user->email = $request->input('email');
$user->password = bcrypt($request->input('password'));
$user->save();
}
答案 0 :(得分:0)
在您的表单中,将action
更改为action="{{route('nameOfRoute')}}"
只需像往常一样命名您的路线。
您也可以制作一个Route::resource()
,以使事情更加干净和标准。