Слияние кода завершено, страница обновится автоматически
<?php
/**
* 响应体封装
*
* @author wujunzhong <1250044515@qq.com>
* @date 2018/1/12
*/
namespace App\Traits;
use Response;
use Symfony\Component\HttpFoundation\Response as FoundationResponse;
trait ApiResponse
{
/**
* @var int HTTP code
*/
protected $statusCode = FoundationResponse::HTTP_OK;
/**
* get the HTTP code
* @return mixed
*/
private function getStatusCode()
{
return $this->statusCode;
}
/**
* set the HTTP code
*
* @param $statusCode
* @return $this
*/
private function setStatusCode($statusCode)
{
$this->statusCode = $statusCode;
return $this;
}
/**
* Repond a no content response.
*
* @param $data
* @param array $header
* @return mixed
*/
public function respond($data, $header = [])
{
return Response::json($data, $this->getStatusCode(), $header);
}
/**
* Repond a no content response.
*
* @return response
*/
public function noContent()
{
return Response::json(null, FoundationResponse::HTTP_NO_CONTENT);
}
/**
* Repond a Request format error!
*
* @param $message
* @param int $code
* @return mixed
*/
public function failed($message = 'Request format error!', $code = FoundationResponse::HTTP_BAD_REQUEST)
{
return $this->setStatusCode($code)->respond(['message' => $message]);
}
/**
* Repond a not found!
*
* @param string $message
* @return mixed
*/
public function notFond($message = 'not found!')
{
return $this->failed($message, Foundationresponse::HTTP_NOT_FOUND);
}
/**
* Repond a validation error!
*
* @param string $message
* @return mixed
*/
public function formError($error = [])
{
return $this->setStatusCode(422)->respond(['message' => "The given data was invalid.", 'error' => $error]);
}
/**
* Repond a Interface requests are too frequent!
*
* @param string $message
* @return mixed
*/
public function requestsMany($message = 'Interface requests are too frequent!')
{
return $this->failed($message, 429);
}
/**
* Respond the error of 'Unauthorized'.
*
* @param string $message
* @return json
*/
public function errorUnauthorized($message = 'Unauthorized')
{
return $this->failed($message, 401);
}
/**
* Respond No access
*
* @param string $message
* @return mixed
*/
public function notAccess($message = 'No access!')
{
return $this->failed($message, 403);
}
/**
* resond a network error!
*
* @param string $message
* @return mixed
*/
public function internalError($message = "network error!")
{
return $this->failed($message, FoundationResponse::HTTP_INTERNAL_SERVER_ERROR);
}
/**
* @param $data
* @param int $code
* @param array $header
* @return mixed
*/
public function success($data, $code = FoundationResponse::HTTP_CREATED, $header = [])
{
$data = is_string($data) ? ['message' => $data] : $data;
return $this->setStatusCode($code)->respond($data, $header);
}
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарий ( 0 )