From 775dd9eb576b33cca12f57e7ae7e8a9a8498fefe Mon Sep 17 00:00:00 2001 From: Yang Luo Date: Thu, 21 Sep 2023 22:32:07 +0800 Subject: [PATCH] Improve email provider error handling and fix bug --- email/azure_acs.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/email/azure_acs.go b/email/azure_acs.go index edd1f1c3..b9baf001 100644 --- a/email/azure_acs.go +++ b/email/azure_acs.go @@ -123,7 +123,9 @@ func (a *AzureACSEmailProvider) sendEmail(e *Email) error { bodyBuffer := bytes.NewBuffer(postBody) - req, err := http.NewRequest("POST", a.Endpoint+sendEmailEndpoint+"?api-version="+apiVersion, bodyBuffer) + endpoint := strings.TrimSuffix(a.Endpoint, "/") + url := fmt.Sprintf("%s/emails:send?api-version=2023-03-31", endpoint) + req, err := http.NewRequest("POST", url, bodyBuffer) if err != nil { return fmt.Errorf("error creating AzureACS API request: %s", err) } @@ -149,7 +151,7 @@ func (a *AzureACSEmailProvider) sendEmail(e *Email) error { defer resp.Body.Close() // Response error Handling - if resp.StatusCode == http.StatusBadRequest { + if resp.StatusCode == http.StatusBadRequest || resp.StatusCode == http.StatusUnauthorized { commError := ErrorResponse{} err = json.NewDecoder(resp.Body).Decode(&commError)