WordPress\AiClient\Providers\Http\Util
ResponseUtil::throwIfNotSuccessful
Throws an appropriate exception if the given response is not successful.
This method checks the HTTP status code of the response and throws the appropriate exception type based on the status code range:
- 3xx: RedirectException (redirect responses)
- 4xx: ClientException (client errors)
- 5xx: ServerException (server errors)
- Other unsuccessful responses: RuntimeException (invalid status codes)
Method of the class: ResponseUtil{}
No Hooks.
Returns
null. Nothing (null).
Usage
$result = ResponseUtil::throwIfNotSuccessful( $response ): void;
- $response(Response) (required)
- The HTTP response to check.
Changelog
| Since 0.1.0 | Introduced. |
ResponseUtil::throwIfNotSuccessful() ResponseUtil::throwIfNotSuccessful code WP 7.0
public static function throwIfNotSuccessful(Response $response): void
{
if ($response->isSuccessful()) {
return;
}
$statusCode = $response->getStatusCode();
// 3xx Redirect Responses
if ($statusCode >= 300 && $statusCode < 400) {
throw RedirectException::fromRedirectResponse($response);
}
// 4xx Client Errors
if ($statusCode >= 400 && $statusCode < 500) {
throw ClientException::fromClientErrorResponse($response);
}
// 5xx Server Errors
if ($statusCode >= 500 && $statusCode < 600) {
throw ServerException::fromServerErrorResponse($response);
}
throw new \RuntimeException(sprintf('Response returned invalid status code: %s', $response->getStatusCode()));
}