A RESTful API package for the Laravel framework.
设置 composer.json
{
"config": {
"secure-http": false
}
}
$ composer config repositories.zfwy-api vcs https://github.com/zhijiangPan/zfwy-api.git
$ composer require zfwy/api:dev-main
如果要给这个包提交代码,为了方便开发, 如下配置
$ composer config repositories.zfwy-api path ../packages/zfwy-api
$ composer require zfwy/api:dev-main
$ composer config repositories.zfwy-api vcs https://github.com/zhijiangPan/zfwy-api.git
$ composer require zfwy/api:~1.0
按照如下设置
<?php
namespace App\Exceptions;
use Exception;
use Chuangke\Api\Exceptions\Helpers;
class Handler extends ExceptionHandler
{
use Helpers;
/**
* Render an exception into an HTTP response.
*
* @param \Illuminate\Http\Request $request
* @param \Exception $exception
*
* @return \Symfony\Component\HttpFoundation\Response
*
* @throws \Exception
*/
public function render($request, Exception $exception)
{
return $this->covertRenderToApiResponse($request, $exception);
}
}
<?php
namespace App\Http\Controllers;
use Chuangke\Api\Routing\Helpers;
class UserController extends Controller
{
use Helpers;
public function index()
{
// 数组返回
return $this->response->array([]);
// 单条数据返回
return $this->response->item(new UserResource($model));
// 集合返回
return $this->response->collection(UserResource::collection($models));
// 分页
return $this->response->collection(UserResource::collection(User::paginate(20)));
// 添加 meta 信息
return $this->response->collection(UserResource::collection(User::paginate(20)))
->meta('key', 'value');
// 参数验证错误
if ($var) {
$this->response->errorUnprocessableEntity('密码错误');
}
// 内部错误
if ($var) {
$this->response->errorInternal();
}
}
}
<?php
api_response()->array();
MIT