micro-account/pkg/common/verifica/nation_mobile.go
2025-02-21 16:57:10 +08:00

75 lines
1.5 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package verifica
import (
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
"strings"
"time"
)
type nationAccount struct {
ak string
sk string
}
type NationMsg struct {
Apikey string `json:"apikey"`
Secret string `json:"secret"`
Content string `json:"content"`
Mobile string `json:"mobile"`
TemplateId int `json:"template_id"`
SendTime int64 `json:"send_time"`
}
const (
sendNationMsgUrl = "https://api.4321.sh/inter/send"
nationMsgTemplateId = 107570 //[$$]您此次验证码为$$60秒内有效请您尽快验证
accessKey = "I1185562576"
secretKey = "1185566b86c739e71"
)
var nationAccountObj *nationAccount
func loadEnv(ak, sk string) {
nationAccountObj = &nationAccount{
ak: ak,
sk: sk,
}
}
func SendNationMsg(telNum, content string, templateId int) error {
if templateId == 0 {
templateId = nationMsgTemplateId
}
fmt.Print("content:", content)
loadEnv(accessKey, secretKey)
//设置飞鸽发送短信需要的参数
msg := NationMsg{
Apikey: nationAccountObj.ak,
Secret: nationAccountObj.sk,
Content: content,
Mobile: telNum,
TemplateId: templateId,
SendTime: time.Now().Unix(),
}
//转json
dataJsonBytes, _ := json.Marshal(msg)
data := strings.NewReader(string(dataJsonBytes))
fmt.Println(string(dataJsonBytes))
resp, err := http.Post(sendNationMsgUrl, "application/json", data)
if err != nil {
return err
}
bodyText, err := ioutil.ReadAll(resp.Body)
if err != nil {
return err
}
fmt.Printf("%s\n", bodyText)
return nil
}