zoukankan      html  css  js  c++  java
  • laravel中间价中写操作日志

    利用中间件进行操作日志记录过程:

    1、创建中间件

    php artisan make:middleware AdminOperationLog

        1

    2、生成了文件./app/Http/Middleware/AdminOperationLog.php

    代码如下:

    <?php

    namespace AppHttpMiddleware;

    use Closure;
    use IlluminateHttpRequest;
    use IlluminateSupportFacadesAuth;
    use AppHttpModelsOperationLog;

    class AdminOperationLog
    {
        /**
         * Handle an incoming request.
         *
         * @param  IlluminateHttpRequest  $request
         * @param  Closure  $next
         * @return mixed
         */
        public function handle($request, Closure $next)
        {
            $user_id = 0;

    //依照自己的方式获取用户资料。
    //        if(Auth::check()) {
    //            $user_id = (int) Auth::id();
    //        }
            $_SERVER['admin_uid'] = $user_id;
            if('GET' != $request->method()){
                $input = $request->all();
                $log = new OperationLog(); # 提前创建表、model
                $log->uid = $user_id;
                $log->path = $request->path();
                $log->method = $request->method();
                $log->ip = $request->ip();
                $log->sql = '';
                $log->input = json_encode($input, JSON_UNESCAPED_UNICODE);
                $log->save();   # 记录日志
            }
            return $next($request);
        }
    }

    3、中间件引入 ./app/Http/Kernel.php

    注意     $middlewareGroups    为全局     $routeMiddleware为路由


    protected $middlewareGroups = [
            'web' => [
                ...
                AppHttpMiddlewareAdminOperationLog::class,
                ...
            ],

            'api' => [
                'throttle:60,1',
                'bindings',
            ],
        ];

  • 相关阅读:
    C#,调用Process解压文件
    使用Jquery的treeview
    利用VS2010的项目生成事件属性进行生成文件的复制与打包
    简单理解laravel框架中的服务容器,服务提供者以及怎样调用服务
    详解PHP实现定时任务的五种方法
    php 回调函数和匿名函数
    mongodb的连接和开启安全验证
    关于版本号:alpha、beta、rc、stable
    php7 mongodb 扩展windows 安装
    终端提交代码到码云
  • 原文地址:https://www.cnblogs.com/zhanghuilong/p/11304350.html
Copyright © 2011-2022 走看看