本文整理匯總了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());
}
}