razonyang / yii2-jsend
Yii2 的 JSend 实现
1.0.1
2019-08-21 08:12 UTC
Requires
- razonyang/jsend: ^1.0
- yiisoft/yii2: ~2.0.13
Requires (Dev)
- phpunit/phpunit: ^7
This package is auto-updated.
Last update: 2024-09-13 09:33:55 UTC
README
本包是 Yii2 对 JSend 规范的实现。
安装
composer require razonyang/yii2-jsend
使用方法
更新响应格式器和错误处理器
return [ 'components' => [ 'response' => [ 'formatters' => [ \yii\web\Response::JSON => [ 'class' => \RazonYang\Yii2\JSend\Formatter::class, ], ], ], 'errorHandler' => [ 'class' => \RazonYang\Yii2\JSend\ErrorHandler::class, ], ], ];
更改 REST 控制器序列化器
public $serializer = \RazonYang\Yii2\JSend\Serializer::class;
错误处理器
ErrorHandler
将异常转换为错误负载
{ "status": "error", "code": "exception code", "message": "exception message" }
它还可以通过抛出 JSend 的异常来返回可选的数据字段
throws new RazonYang\Jsend\Exception($message, $code, $data, $previous); // you can also define your own exception: class MyException extends RazonYang\Jsend\Exception { } throws new MyException();
{ "status": "error", "code": "exception code", "message": "exception message", "data": "exception data" }