package third import ( "encoding/json" "errors" "eta/eta_api/models" "eta/eta_api/utils" "fmt" "io" "net/http" "time" ) func HttpGet(url string) (body []byte, err error) { client := &http.Client{} req, err := http.NewRequest("GET", url, nil) if err != nil { return } nonce := utils.GetRandStringNoSpecialChar(16) timestamp := time.Now().Format(utils.FormatDateTimeUnSpace) signature := utils.GetSign(nonce, timestamp, utils.ETA_MINI_APPID, utils.ETA_MINI_APP_SECRET) //增加header选项 req.Header.Add("Nonce", nonce) req.Header.Add("Timestamp", timestamp) req.Header.Add("Appid", utils.ETA_MINI_APPID) req.Header.Add("Signature", signature) req.Header.Set("Content-Type", "application/json") response, err := client.Do(req) if err != nil { return } defer response.Body.Close() body, err = io.ReadAll(response.Body) if err != nil { return } return } func DwSendTemplatedMsg(reportId int) error { url := fmt.Sprintf("%swechat/send_template_msg?ReportId=%d", utils.ETAMiniBridgeUrl, reportId) body, err := HttpGet(url) if err != nil { return err } result := new(models.BaseResponse) if err := json.Unmarshal(body, &result); err != nil { return err } if result.Ret != 200 { err = errors.New(string(body)) return err } return nil }