Laravel 5.4 禁用寄存器路由
2022-08-30 10:56:11
我正在尝试禁用在Laravel 5.4中运行的应用程序上的注册路由。
在我的路由文件中,我只有
Auth::routes();
有没有办法禁用注册路由?
我正在尝试禁用在Laravel 5.4中运行的应用程序上的注册路由。
在我的路由文件中,我只有
Auth::routes();
有没有办法禁用注册路由?
这:code
Auth::routes();
这是这组路线的一个缩略语:
// Authentication Routes...
Route::get('login', 'Auth\LoginController@showLoginForm')->name('login');
Route::post('login', 'Auth\LoginController@login');
Route::post('logout', 'Auth\LoginController@logout')->name('logout');
// Registration Routes...
Route::get('register', 'Auth\RegisterController@showRegistrationForm')->name('register');
Route::post('register', 'Auth\RegisterController@register');
// Password Reset Routes...
Route::get('password/reset', 'Auth\ForgotPasswordController@showLinkRequestForm')->name('password.request');
Route::post('password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.email');
Route::get('password/reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.reset');
Route::post('password/reset', 'Auth\ResetPasswordController@reset');
因此,您可以将第一个路由替换为路由列表,并注释掉应用程序中不需要的任何路由。
编辑拉拉维尔版本 = > 5.7
在较新版本中,您可以向函数调用添加参数以禁用寄存器路由:Auth::routes()
Auth::routes(['register' => false]);
添加了电子邮件验证路由:
Route::get('email/verify', 'Auth\VerificationController@show')->name('verification.notice');
Route::get('email/verify/{id}', 'Auth\VerificationController@verify')->name('verification.verify');
Route::get('email/resend', 'Auth\VerificationController@resend')->name('verification.resend');
顺便说一句,您还可以禁用和路由:Password Reset
Email Verification
Auth::routes(['reset' => false, 'verify' => false]);
从Laravel 5.7开始,一个新的参数被引入到Auth::routes()
方法;通过该数组,您可以传递一个数组来控制用户身份验证所需路由的生成(可以从 、 或字符串文本中选择有效条目)。$options
'register'
'reset'
'verify'
Auth::routes(['register' => false]);