From 089f4ff480d665eecd82fe2b0a36fa1a0aafcddb Mon Sep 17 00:00:00 2001 From: Yang Luo Date: Sun, 5 Sep 2021 10:48:03 +0800 Subject: [PATCH] Handle error in go-sms-sender. --- controllers/service.go | 12 ++++++++---- go.mod | 2 +- go.sum | 4 ++-- object/sms.go | 18 +++++++----------- object/verification.go | 2 +- 5 files changed, 19 insertions(+), 19 deletions(-) diff --git a/controllers/service.go b/controllers/service.go index b7793014..cb468a3b 100644 --- a/controllers/service.go +++ b/controllers/service.go @@ -104,7 +104,7 @@ func (c *ApiController) SendSms() { return } - client := sender.NewSmsClient( + client, err := sender.NewSmsClient( provider.Type, provider.ClientId, provider.ClientSecret, @@ -113,8 +113,8 @@ func (c *ApiController) SendSms() { provider.TemplateCode, provider.AppId, ) - if client == nil { - c.ResponseError("SMS client is null") + if err != nil { + c.ResponseError(err.Error()) return } @@ -130,7 +130,11 @@ func (c *ApiController) SendSms() { return } - client.SendMessage(smsForm.Parameters, smsForm.Receivers...) + err = client.SendMessage(smsForm.Parameters, smsForm.Receivers...) + if err != nil { + c.ResponseError(err.Error()) + return + } c.ResponseOk() } diff --git a/go.mod b/go.mod index 30aee669..22ed324d 100644 --- a/go.mod +++ b/go.mod @@ -9,7 +9,7 @@ require ( github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f // indirect github.com/casbin/casbin/v2 v2.30.1 github.com/casbin/xorm-adapter/v2 v2.3.1 - github.com/casdoor/go-sms-sender v0.0.3 + github.com/casdoor/go-sms-sender v0.0.4 github.com/dchest/captcha v0.0.0-20200903113550-03f5f0333e1f github.com/dgrijalva/jwt-go v3.2.0+incompatible github.com/go-gomail/gomail v0.0.0-20160411212932-81ebce5c23df diff --git a/go.sum b/go.sum index c7324b55..d412c85f 100644 --- a/go.sum +++ b/go.sum @@ -75,8 +75,8 @@ github.com/casbin/casbin/v2 v2.30.1 h1:P5HWadDL7olwUXNdcuKUBk+x75Y2eitFxYTcLNKeK github.com/casbin/casbin/v2 v2.30.1/go.mod h1:vByNa/Fchek0KZUgG5wEsl7iFsiviAYKRtgrQfcJqHg= github.com/casbin/xorm-adapter/v2 v2.3.1 h1:RVGsM6KYFP9s4OQJXrP/gv56Wmt5P40mzvcyXgv5xeg= github.com/casbin/xorm-adapter/v2 v2.3.1/go.mod h1:GZ+nlIdasVFunQ71SlvkL/HcQQBvFncphDf+2Yl167c= -github.com/casdoor/go-sms-sender v0.0.3 h1:17/dzAP/ZgSY4AORzcsR/48AKyBycQcHUGg00R9tnSI= -github.com/casdoor/go-sms-sender v0.0.3/go.mod h1:TMM/BsZQAa+7JVDXl2KqgxnzZgCjmHEX5MBN662mM5M= +github.com/casdoor/go-sms-sender v0.0.4 h1:UekC70YueeA5E2LrKJVQKCGntdTlYwal/7og4vao66U= +github.com/casdoor/go-sms-sender v0.0.4/go.mod h1:TMM/BsZQAa+7JVDXl2KqgxnzZgCjmHEX5MBN662mM5M= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash/v2 v2.1.1 h1:6MnRN8NT7+YBpUIWxHtefFZOKTAPgGjpQSxqLNn0+qY= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= diff --git a/object/sms.go b/object/sms.go index 691ae0b1..8d00a7f6 100644 --- a/object/sms.go +++ b/object/sms.go @@ -14,16 +14,12 @@ package object -import ( - "fmt" +import "github.com/casdoor/go-sms-sender" - "github.com/casdoor/go-sms-sender" -) - -func SendCodeToPhone(provider *Provider, phone, code string) error { - client := go_sms_sender.NewSmsClient(provider.Type, provider.ClientId, provider.ClientSecret, provider.SignName, provider.RegionId, provider.TemplateCode, provider.AppId) - if client == nil { - return fmt.Errorf("unsupported provider type: %s", provider.Type) +func SendSms(provider *Provider, phone string, code string) error { + client, err := go_sms_sender.NewSmsClient(provider.Type, provider.ClientId, provider.ClientSecret, provider.SignName, provider.RegionId, provider.TemplateCode, provider.AppId) + if err != nil { + return err } param := map[string]string{} @@ -33,6 +29,6 @@ func SendCodeToPhone(provider *Provider, phone, code string) error { param["code"] = code } - client.SendMessage(param, phone) - return nil + err = client.SendMessage(param, phone) + return err } diff --git a/object/verification.go b/object/verification.go index 384f5eed..a1eb20fb 100644 --- a/object/verification.go +++ b/object/verification.go @@ -68,7 +68,7 @@ func SendVerificationCodeToPhone(organization *Organization, user *User, provide return err } - return SendCodeToPhone(provider, dest, code) + return SendSms(provider, dest, code) } func AddToVerificationRecord(user *User, provider *Provider, remoteAddr, recordType, dest, code string) error {