zoukankan      html  css  js  c++  java
  • Laravel-路由组和中间件

    Laravel-路由组和中间件

    标签(空格分隔): php


    定义路由组

    Route::group(['prefix'=>'Anime'], function(){
        Rout::match(['get', 'post'], 'login', 'AdminLoginController@login)
        
        Route::group(['middleware'=>'CheckToken', function(){
            Rout::match(['get', 'post'], 'index','AdminLoginController@index)
            
        })
    });
    
    
    prefix : 路由前缀  对应生成的路由是 /Anime/login
    match: http请求方式 get | post | delete
    middleware : 中间件
    

    中间件

    1 要创建一个新的中间件,可以通过 Artisan 命令 make:middleware:
    php artisan make:middleware CheckToken
    
    2 生成文件的位置在 appHttpMiddlewareCheckToken.php
    在 handle 方法里完成你的中间件 如:登录验证, 记录日志
    
    handle分为 :中间件之前/之后
    

    3 注册中间件
    appHttpKernel.php
        
        注册在 routeMiddleware 数组中:
    
        <?php
    
            namespace AppHttp;
            
            use IlluminateFoundationHttpKernel as HttpKernel;
            
            class Kernel extends HttpKernel
            {
                /**
                 * The application's global HTTP middleware stack.
                 *
                 * These middleware are run during every request to your application.
                 *
                 * @var array
                 */
                ###  全局的中间件
                protected $middleware = [
                    IlluminateFoundationHttpMiddlewareCheckForMaintenanceMode::class,
                    IlluminateFoundationHttpMiddlewareValidatePostSize::class,
                    AppHttpMiddlewareTrimStrings::class,
                    IlluminateFoundationHttpMiddlewareConvertEmptyStringsToNull::class,
                ];
            
                /**
                 * The application's route middleware groups.
                 *
                 * @var array
                 */
                 ## 中间件组 
    outes web => web.php  api=> api.php 文件中所有的路由都必须通过中间件的处理
                protected $middlewareGroups = [
                    'web' => [
                        AppHttpMiddlewareEncryptCookies::class,
                        IlluminateCookieMiddlewareAddQueuedCookiesToResponse::class,
                        IlluminateSessionMiddlewareStartSession::class,
                        // IlluminateSessionMiddlewareAuthenticateSession::class,
                        IlluminateViewMiddlewareShareErrorsFromSession::class,
                        AppHttpMiddlewareVerifyCsrfToken::class,
                        IlluminateRoutingMiddlewareSubstituteBindings::class,
                        AppHttpMiddlewareCheckToken::class
                    ],
            
                    'api' => [
                        'throttle:60,1',
                        'bindings',
                    ],
                ];
            
                /**
                 * The application's route middleware.
                 *
                 * These middleware may be assigned to groups or used individually.
                 *
                 * @var array
                 */
                 # 路由组中间件
                protected $routeMiddleware = [
                    'auth' => IlluminateAuthMiddlewareAuthenticate::class,
                    'auth.basic' => IlluminateAuthMiddlewareAuthenticateWithBasicAuth::class,
                    'bindings' => IlluminateRoutingMiddlewareSubstituteBindings::class,
                    'can' => IlluminateAuthMiddlewareAuthorize::class,
                    'guest' => AppHttpMiddlewareRedirectIfAuthenticated::class,
                    'throttle' => IlluminateRoutingMiddlewareThrottleRequests::class,
                    'CheckToken' => AppHttpMiddlewareCheckToken::class,
    
                ];
    }
  • 相关阅读:
    16、springboot——错误处理原理+定制错误页面(1)
    15、springboot——CRUD-跳转到修改员工页面+员工修改和删除实现 ⑥
    14、springboot——CRUD-跳转到添加员工页面+员工添加实现⑤
    13、springboot——CRUD-thymeleaf公共页面元素抽取④
    12、springboot——CRUD登录和拦截③
    11、springboot——CRUD国际化②
    10、springboot——CRUD导入静态资源以及设置默认访问首页①
    9、springmvc的自动配置
    8、模板引擎thymeleaf(百里香叶)
    7、对静态资源映射的规则
  • 原文地址:https://www.cnblogs.com/yanweifeng/p/9842681.html
Copyright © 2011-2022 走看看