繁体   English   中英

Laravel 4.2抛出MethodNotAllowedHttpException

[英]Laravel 4.2 throwing MethodNotAllowedHttpException

我有在以前版本中可用的代码,现在不再起作用。 我正在像这样进行简单的用户身份验证:

形成:

 {{ Form::open(array(
        'url'       => 'login',
        'method'    => 'PUT',
        'class'     => 'pure-form pure-form-stacked'
  )) }}

                    {{ $errors->first('email') }}
                    {{ $errors->first('password') }}

                    {{ Form::text('email', Input::old('email'), array('placeholder' => 'user')) }}
                    {{ Form::password('password', array('placeholder' => 'password')) }}    

                    {{ Form::submit('Log in', array('class'=>'button-primary')) }}


   {{ Form::close() }}

路线:

Route::get('login', array('https', function(){
return View::make('back-end/login');
}));

Route::post('login', array('https', function(){
$userdata = array(
        'email' => Input::get('email'),
        'password' => Input::get('password')
);

if(Auth::attempt($userdata)){
        return Redirect::to('dashboard');
    } else {
        return Redirect::to('login');
    }
}));


Route::group(['before' => 'auth', 'prefix' => 'dashboard'], function(){
    Route::get('/', 'DashboardController@getDashboard');
    Route::resource('blog', 'BlogController');
    Route::get('logout', [
           'as'   => 'logout',
           'uses' => 'UserController@getLogout'
        ]); 
});

登录页面将加载,但是当我提交表单时,我会进入输出MethodNotAllowedHttpException。

您的登录路线是POST ,但您的表单使用的是PUT Form::open调用中将'method' => 'PUT',切换为'method' => 'POST', (因为您不应该在那里使用PUT ),它应该可以工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM