From ec28bc28aae3f5621c78b4634ec45ca58918b198 Mon Sep 17 00:00:00 2001 From: Anatolii Platonov Date: Mon, 28 Oct 2024 13:17:25 +0400 Subject: [PATCH] [GCLOUD2-16462] Add status code to response error --- gcore/errors.go | 5 +++-- gcore/provider/provider.go | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/gcore/errors.go b/gcore/errors.go index 53209f0..8777671 100644 --- a/gcore/errors.go +++ b/gcore/errors.go @@ -3,8 +3,9 @@ package gcore import "encoding/json" type ErrorResponse struct { - Errors *json.RawMessage - Message string + StatusCode int + Errors *json.RawMessage + Message string } func (resp *ErrorResponse) Error() string { diff --git a/gcore/provider/provider.go b/gcore/provider/provider.go index a4e9d4d..522c628 100644 --- a/gcore/provider/provider.go +++ b/gcore/provider/provider.go @@ -54,6 +54,7 @@ func (c *Client) Request(ctx context.Context, method, path string, payload inter if resp.StatusCode < http.StatusOK || resp.StatusCode >= http.StatusBadRequest { var errResp gcore.ErrorResponse + errResp.StatusCode = resp.StatusCode if err := json.NewDecoder(resp.Body).Decode(&errResp); err != nil { return fmt.Errorf("decode err resp %d: %w", resp.StatusCode, err) }