jefferyjob / laravel-api-code
The simplest way for laravel to develop API
dev-master
2022-03-19 03:50 UTC
This package is auto-updated.
Last update: 2025-06-19 14:05:47 UTC
README
环境要求
安装
composer 安装
composer require jefferyjob/laravel-api-code
添加服务
在 laravel framework 配置目录 conf 目录的 app.php 文件种,容器配置 providers 种配置IOC
Jefferyjob\LaravelApiCode\ApiCodeServiceProvider::class,
发布配置
php artisan vendor:publish --provider="Jefferyjob\LaravelApiCode\ApiCodeServiceProvider"
API数据优化
在 app/Exceptions/Handler.php
增加,接口在匹配以下规则的情况下,在异常抛出中以 Json 格式输出错误。
/** * 将异常渲染至 HTTP 响应值中 * * @param \Illuminate\Http\Request $request * @param \Throwable $e * @return \Symfony\Component\HttpFoundation\Response * * @throws \Throwable */ public function render($request, Throwable $e) { if ($request->is('ajax/*') || $request->is('api/*') || $request->ajax()){ return response()->json(app('ApiCode')->getExceptionContent($request, $e), 200); } else { return parent::render($request, $e); } }
在 app/Http/Kernel.php
中配置数据返回的中间件
protected $middlewareGroups = [ 'api' => [ // ... ... \Jefferyjob\LaravelApiCode\App\Middleware\Api::class, // ... ... ], ];