2017-12-13 19 views
-1

これは私のプロジェクトのログイン機能で、問題は、私は、この関数を呼び出すときに、プログラムが私にこのエラーを与えることである。Laravel - MethodNotAllowedHttpException

public function login() 
{ 
    $username = Session::get("login"); 
    $password = app("request")->input("password"); 
    $logged = app("request")->input("logged"); 
    $response = response("200"); 
    $data = DB::table("utenti")->where("username",$username)->where("password",md5(sha1(md5(sha1($password)))))->count(); 
    if($data == 1) 
    { 
     if($logged == "true") 
     { 
      $lung_pass = 64; 
      $mypass = ""; 
      for ($x=1; $x<=$lung_pass; $x++) 
      { 
       if ($x % 2){ 
        $mypass.= chr(rand(97,122)); 
       }else{ 
        $mypass = $mypass . rand(0,9); 
       } 
      } 
      $response -> cookie(cookie()->forever("token",$mypass)); 
     } 
     return true; 
    } 
} 

これは、ログインのjQueryのスクリプトです:

var password = $("#password").val(); 
     $.post("{{route("login")}}", {logged:$("#remember-me").prop("checked"), _token: "{{csrf_token()}}", password: password}, function (data) { 
      if (data == "true") { 
       $("#logged").modal({backdrop: 'static', keyboard: false}); 
      } else { 
       $("#message").hide(); 
       $("#message").show(1000); 
       $("#message").html("La Password è risultata Errata!"); 
      } 
     }); 
     return false; 

ルート:

Route::post("/login", "[email protected]")->name("login"); 
+3

'P.S. Routeは投稿ルートです。ありがとうございます。あなたのルートを投稿してください。 – bassxzero

+1

P.S.とにかく私たちにルートを示すべきです、それは私たちがあなたを信じていないということではありませんが、確かに確かめるためです。一般的に、この種のエラーの原因です。 – teeyo

+3

あなたは何をしていますか? ( "password"、md5(sha1(md5(sha1($ password))))));}ここで、( "username"、$ username) –

答えて

0

以下の置き換え

Route::match(['get','post'],'/login', [ 
    'uses'=>'[email protected]' 
]); 

、問題がルートにあるかどうかを確認して

Route::post("/login", "[email protected]")->name("login"); 

。エラーメッセージ(MethodNotAllowedHttpException)は、HTTPメソッド(GET、POST、PUT、OPTIONなど)の不一致と関連しています。

これは、httpメソッドの例外を無視する方法です。

この投稿はあなたの例外です。

関連する問題