如何在Laravel中省略特定路线的中间件

时间:2019-04-24 23:12:40

标签: laravel-5

我有以下路线:

Route::get('table_position/{discipline}/{category}', 'ProgrammingController@v_table')->name('programming.v_table');

但是我希望它无需身份验证即可显示。

使用php artisan make:auth,以便使用auth中间件。

我正在使用laravel 5.7

我希望您允许我在不进行身份验证的情况下进行可视化

2 个答案:

答案 0 :(得分:0)

基本上,这是对您的过程进行身份验证的

if (Auth::check()){
    //everything
}

因此,如果您未在ProgrammingController @ v_table中调用此函数,则除非您需要Auth :: check进一步检查路由,否则它不应进行身份验证。确保检查索引和Auth :: check()的基本控制器

答案 1 :(得分:0)

您必须以这种方式对ProgrammingController进行一些更改,

class ProgrammingController extends Controller
{
   public function __construct()
   {
     $this->middleware('auth')->except(['v_table']);
   }
}

通过传递function的{​​{1}}来定义您不想在哪个特定auth上使用array中间件。