起初我决定按照下面给出的代码组织我的路线。但是,我很快意识到,一旦我登录,就无法访问使用中间件访客的组中的路由。这是否意味着无论他们是否已登录,我都希望任何人都可以访问这些路由。不应该在任何中间件组?
<?php
Route::group(['middleware' => ['web']], function(){
Route::group(['middleware' => ['guest']], function(){
Route::get('/', 'PagesController@index')->name('home');
Route::get('/image/{id}', 'PagesController@specificImage')->name('specificImage');
Route::get('/contact', 'PagesController@contact')->name('contact');
Route::get('/tags', 'PagesController@tags')->name('tags');
Route::get('/tags/{tagName}', 'PagesController@specificTag')->name('specificTag');
Route::get('/albums', 'PagesController@albums')->name('albums');
Route::get('/albums/{albumId}/{albumName}', 'PagesController@specificAlbum')->name('specificAlbum');
Route::post('/signup', 'UsersController@signUp')->name('signup');
Route::post('/signin', 'UsersController@signIn')->name('signin');
Route::post('/sendmail', 'UsersController@sendMail')->name('sendmail');
});
Route::group(['middleware' => ['auth']], function(){
Route::get('/upload', 'PagesController@upload')->name('upload');
Route::get('/logout', 'UsersController@logOut')->name('logout');
Route::get('/imageDelete/{imageId}', 'ImagesController@deleteImage')->name('deleteImage');
Route::get('/deleteTag/{tagId}', 'TagsController@deleteTag')->name('deleteTag');
Route::post('/imageUpload', 'ImagesController@uploadImage')->name('imageUpload');
Route::post('/albumUpload', 'AlbumsController@uploadAlbum')->name('albumUpload');
Route::post('/createTag', 'TagsController@createTag')->name('createTag');
});
});
从路由组中删除auth中间件
正确!摆脱客户中间件,你不需要它。
只是不要使用任何中间件。