Laravel 靈活使用 中介軟體, 自定義全域性 API JSON 返回格式

QS發表於2019-05-06
  1. 首先建立中介軟體

    php artisan make:middleware CustomApiMiddleware

  2. 將這個中介軟體定製為一個 After Middleware, 參閱官方文件

    /app/Http/Middleware/CustomApiMiddleware.php

    
    <?php
    
    namespace App\Http\Middleware;
    
    use Closure;
    use Illuminate\Http\Response;
    
    class CustomApiMiddleware
    {
        public function handle($request, Closure $next, $guard = null)
        {
            $response = $next($request);
            $original = $response->getOriginalContent();
    
            // 在這裡可以定製你想要的返回格式, 亦或者是 JSON 編碼格式
            $response->setContent([
                'code' => 200,
                'data' => $original,
                'message' => '',
            ]); 
            return $response;
        }
    }
  3. 編輯 /app/Http/Kernel.php, 把這個中介軟體放到你想要的中介軟體組裡. 比如可以新增到 api 這個 group 中, 當然也可以自定義中介軟體名字後, 配置給特定的路由使用

    protected $middlewareGroups = [
        // ...
        'api' => [
            // ...
            \App\Http\Middleware\CustomApiMiddleware::class,
        ],
    ];
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章