From bfc7aedecfc1c576caf67f7e490fa297eed0bd6d Mon Sep 17 00:00:00 2001 From: Bel LaPointe Date: Wed, 12 Jan 2022 21:54:09 -0500 Subject: [PATCH] stub image token refresh --- message/images.go | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/message/images.go b/message/images.go index 572a8b4..f618523 100644 --- a/message/images.go +++ b/message/images.go @@ -12,8 +12,21 @@ import ( "time" ) +var ErrBadAuth = errors.New("auth has failed") + func UploadImage(b []byte) (string, error) { - return uploadImage(b) + path, err := uploadImage(b) + if err == ErrBadAuth { + if err := refreshToken(); err != nil { + return "", err + } + path, err = uploadImage(b) + } + return path, err +} + +func refreshToken() error { + return errors.New("not impl") } func uploadImage(b []byte) (string, error) { @@ -49,7 +62,11 @@ func uploadImage(b []byte) (string, error) { } defer response.Body.Close() b, _ = ioutil.ReadAll(response.Body) - if response.StatusCode != http.StatusOK { + switch response.StatusCode { + case http.StatusOK: + case 401, 403: + return "", ErrBadAuth + default: return "", fmt.Errorf("error uploading image: (%d) %s", response.StatusCode, b) } var result struct {