【问题标题】:The GET method is not supported for this route. Supported methods: POST. in laravel 8此路由不支持 GET 方法。支持的方法:POST。在 laravel 8
【发布时间】:2021-10-07 13:52:34
【问题描述】:

我不断收到此错误“此路线不支持 GET 方法。支持的方法:POST”,我不知道我错在哪里。 这是我的控制器


         public function admlogin(Request $request){
             $request->validate([
                'email'=>'required',
                'password'=>'required'
            ]);
             $user = Users::where('email', '=', $request->email)->first();
             if ($user) {
               if ($request->password, $user->password) {
                   $request->session()->put('id', $user->id);
                   return redirect('index');
                } else {
                   return back()->with('fail','This email is incorrect');
                }
            
             } else {
                 return back()->with('fail','This email is incorrect');
          }
      }

这是我的 web.php

     Route::post('/adlogin', [UserController::class,'admlogin'])->name('adlogin');

     Route::get('index/', 'App\Http\Controllers\UserController@index');

还有我的 login.blade.php

         <form action="adlogin" method="POST">
          @csrf
         <div class="form-group">
            <input class="form-control" type="text" placeholder="Email">
         </div>
         <div class="form-group">
             <input class="form-control" type="text" placeholder="Password">
          </div>
          <div class="form-group">
            <button class="btn btn-primary btn-block" type="submit">Login</button>
          </div>
        </form>

【问题讨论】:

  • 尝试清除一次路由缓存,看看是否有帮助。

标签: php laravel laravel-8


【解决方案1】:

你不能简单地定义路由

<form action="adlogin" method="POST">

必须使用 laravel helper 来定义路由或 url,如

 <form action="{{ route('adlogin') }}" method="POST">

<form action="{{ url('adlogin') }}" method="POST">

【讨论】:

  • 感谢您的回复,但我这样做了,但我仍然有同样的错误
猜你喜欢
  • 2021-08-05
  • 2021-01-10
  • 1970-01-01
  • 2021-05-08
  • 2021-04-11
  • 2020-06-05
  • 2020-03-21
  • 2020-04-19
相关资源
最近更新 更多