如果我希望访客,经过身份验证的用户以及其他所有人都可以访问该路由,请使用哪个中间件?

问题描述 投票:0回答:3

起初我决定按照下面给出的代码组织我的路线。但是,我很快意识到,一旦我登录,就无法访​​问使用中间件访客的组中的路由。这是否意味着无论他们是否已登录,我都希望任何人都可以访问这些路由。不应该在任何中间件组?

<?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');
    });
});
php laravel
3个回答
1
投票

从路由组中删除auth中间件


0
投票

正确!摆脱客户中间件,你不需要它。


0
投票

只是不要使用任何中间件。

© www.soinside.com 2019 - 2024. All rights reserved.