本文整理汇总了PHP中Zend\Http\Response::isClientError方法的典型用法代码示例。如果您正苦于以下问题:PHP Response::isClientError方法的具体用法?PHP Response::isClientError怎么用?PHP Response::isClientError使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend\Http\Response
的用法示例。
在下文中一共展示了Response::isClientError方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: decodeBody
/**
* @param Response $response
*
* @throws Exception\ClientException
*
* @return mixed
*/
protected function decodeBody(Response $response)
{
if ($response->isServerError()) {
throw new Exception\ClientException(sprintf("'%s' provider encountered a '%s' error while querying '%s'", $this->getIdentifier(), $response->getReasonPhrase(), $this->uri));
}
$body = Json::decode($response->getBody());
if ($response->isClientError()) {
throw new Exception\ClientException($body->error->message, $response->getStatusCode());
}
return $body;
}
示例2: checkResponse
/**
* Checks ReST response for errors.
*
* @param Response $response the ReST response
* @return void
* @throws Exception\RuntimeException
* @access protected
*/
protected static function checkResponse(HttpResponse $response)
{
if ($response->isServerError() || $response->isClientError()) {
throw new Exception\RuntimeException(sprintf('Invalid response status code (HTTP/%s %s %s)', $response->getVersion(), $response->getStatus(), $response->getMessage()));
}
}
示例3: prepareResponse
/**
* Prepare a solarium response from the given request and client
* response
*
* @throws HttpException
* @param Request $request
* @param \Zend\Http\Response $response
* @return Response
*/
protected function prepareResponse($request, $response)
{
if ($response->isClientError()) {
throw new HttpException($response->getReasonPhrase(), $response->getStatusCode());
}
if ($request->getMethod() == Request::METHOD_HEAD) {
$data = '';
} else {
$data = $response->getBody();
}
// this is used because in ZF2 status line isn't in the headers anymore
$headers = array($response->renderStatusLine());
return new Response($data, $headers);
}
示例4: parseResponse
/**
* @param HttpResponse $response
* @throws Exception\RuntimeException
* @return array
*/
private function parseResponse(HttpResponse $response)
{
$result = json_decode($response->getBody(), true);
if ($response->isSuccess()) {
return $result;
}
// There is a 4xx error
if ($response->isClientError()) {
if (isset($result['errors']) && is_array($result['errors'])) {
$message = implode(', ', $result['errors']);
} elseif (isset($result['error'])) {
$message = $result['error'];
} else {
$message = 'Unknown error';
}
throw new Exception\RuntimeException(sprintf('An error occured on SendGrid (http code %s), message: %s', $response->getStatusCode(), $message));
}
// There is a 5xx error
throw new Exception\RuntimeException('SendGrid server error, please try again');
}
示例5: handleException
private function handleException(Response $resp)
{
// TODO: test coverage
if ($resp->isClientError()) {
if ($resp->getStatusCode() === 403) {
throw new AuthenticationException($this->apiKey, $this->apiSecret, null);
} else {
throw new DomainException('The OpenTok API request failed: ' . $resp->getReasonPhrase(), null);
}
} elseif ($resp->isServerError()) {
throw new UnexpectedValueException('The OpenTok API server responded with an error: ' . $resp->getReasonPhrase(), null);
} else {
throw new Exception('An unexpected error occurred:' . $resp->getReasonPhrase());
}
}