修复短信登录限流处理
This commit is contained in:
@@ -81,16 +81,21 @@ func (p *AliyunProvider) SendLoginCode(ctx context.Context, phone string, code s
|
||||
|
||||
resultCode := dara.StringValue(resp.Body.Code)
|
||||
if resultCode != "OK" {
|
||||
resultMessage := dara.StringValue(resp.Body.Message)
|
||||
if p.log != nil {
|
||||
p.log.Warn(
|
||||
"aliyun sms rejected",
|
||||
zap.String("phone", maskPhone(phone)),
|
||||
zap.String("request_id", dara.StringValue(resp.Body.RequestId)),
|
||||
zap.String("code", resultCode),
|
||||
zap.String("message", dara.StringValue(resp.Body.Message)),
|
||||
zap.String("message", resultMessage),
|
||||
)
|
||||
}
|
||||
return fmt.Errorf("aliyun sms rejected: %s", resultCode)
|
||||
providerErr := &ProviderError{Code: resultCode, Message: resultMessage}
|
||||
if resultCode == "isv.BUSINESS_LIMIT_CONTROL" {
|
||||
providerErr.Err = ErrProviderRateLimited
|
||||
}
|
||||
return providerErr
|
||||
}
|
||||
|
||||
if p.log != nil {
|
||||
|
||||
Reference in New Issue
Block a user