1 changed files with 67 additions and 0 deletions
@ -0,0 +1,67 @@ |
|||||
|
<?php |
||||
|
namespace app\api\controller; |
||||
|
|
||||
|
use think\response\Json; |
||||
|
use think\route\dispatch\Controller; |
||||
|
|
||||
|
class ApiController extends Controller{ |
||||
|
/** |
||||
|
* 返回封装后的 API 数据到客户端 |
||||
|
* @param int|null $status |
||||
|
* @param string $message |
||||
|
* @param array $data |
||||
|
* @return Json |
||||
|
*/ |
||||
|
protected final function renderJson(int $status = null, string $message = '', array $data = []): Json |
||||
|
{ |
||||
|
return json(compact('status', 'message', 'data')); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 返回操作成功json |
||||
|
* @param array|string $data |
||||
|
* @param string $message |
||||
|
* @return Json |
||||
|
*/ |
||||
|
protected final function renderSuccess($data = [], string $message = 'success'): Json |
||||
|
{ |
||||
|
if (is_string($data)) { |
||||
|
$message = $data; |
||||
|
$data = []; |
||||
|
} |
||||
|
return $this->renderJson(config('status.success'), $message, $data); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 返回操作失败json |
||||
|
* @param string $message |
||||
|
* @param array $data |
||||
|
* @return Json |
||||
|
*/ |
||||
|
protected final function renderError(string $message = 'error', array $data = []): Json |
||||
|
{ |
||||
|
return $this->renderJson(config('status.error'), $message, $data); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 获取post数据 (数组) |
||||
|
* @param null $key |
||||
|
* @param bool $filter |
||||
|
* @return mixed |
||||
|
*/ |
||||
|
protected final function postData($key = null, bool $filter = false) |
||||
|
{ |
||||
|
return $this->request->post(empty($key) ? '' : "{$key}/a", null, $filter ? '' : null); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 获取post数据 (数组) |
||||
|
* @param string|null $key |
||||
|
* @param bool $filter |
||||
|
* @return mixed |
||||
|
*/ |
||||
|
protected final function postForm(?string $key = 'form', bool $filter = true) |
||||
|
{ |
||||
|
return $this->postData(empty($key) ? 'form' : $key, $filter); |
||||
|
} |
||||
|
} |
||||
Loading…
Reference in new issue