From 6568cc06900fb87d6dc75e1f0a9e6a428fb22e5b Mon Sep 17 00:00:00 2001 From: jiangyong Date: Sun, 2 Aug 2026 00:04:59 +0800 Subject: [PATCH] httppostform --- unify/message.go | 17 +- unify/message_test.go | 647 +++++++++++++++++++++++++++++++++++++++++- util/http.go | 23 ++ 3 files changed, 679 insertions(+), 8 deletions(-) diff --git a/unify/message.go b/unify/message.go index f656bca..a75f9c6 100644 --- a/unify/message.go +++ b/unify/message.go @@ -67,10 +67,21 @@ func (m *Message) SendText(args ...string) error { } else if len(args) > 4 { receiver, content, fingerprint, level, count = args[0], args[1], args[2], args[3], args[4] } - reqUrl := fmt.Sprintf("%s/admin/message/send?sender=%s&receiver=%s&type=text&fingerprint=%s&count=%s&level=%s&content=%s", m.address, m.sender, receiver, fingerprint, count, level, url.QueryEscape(content)) - body, err := util.HttpGet(reqUrl, map[string]string{ + + // Build form data + formData := url.Values{} + formData.Set("sender", m.sender) + formData.Set("receiver", receiver) + formData.Set("type", "text") + formData.Set("fingerprint", fingerprint) + formData.Set("count", count) + formData.Set("level", level) + formData.Set("content", content) + + reqUrl := fmt.Sprintf("%s/admin/message/send", m.address) + body, err := util.HttpPostForm(reqUrl, map[string]string{ "x-token": m.token, - }) + }, formData) if err != nil { return err } diff --git a/unify/message_test.go b/unify/message_test.go index e6cc200..e432d89 100644 --- a/unify/message_test.go +++ b/unify/message_test.go @@ -8,12 +8,649 @@ import ( func TestMessage_Send(t *testing.T) { - s := NewMessage("http://u.batiao8.com", "", "alarm") + s := NewMessage("http://u.batiao8.com", "c39e1c6e-38f7-422c-a7d1-9e05bf65596f", "batiao-mail") mess := make([]string, 0) - mess = append(mess, "加发到") - mess = append(mess, "asdfasdfadfa") - mess = append(mess, "@3q452345~!@@#$$%^&*())") - err := s.Send("jiangyong", strings.Join(mess, "\n")) + mess = append(mess, ` + + + + + + 【八条科技】【企业服务】[2025-02-13] + + + + + + + + + + +
+
【八条科技】【企业服务】[2025-02-13]
+ + + + + +
(一)鱼办
+ + + +
1.1 汇总统计
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
日期支付订单支付金额平均金额人均订单退款数退款金额
2025-02-13(星期四) 6 2610.93 435.15 3 0 0
2025-02-12(星期三) 6 2810.57 468.42 3 0 0
2025-02-11(星期二) 11 4551.06 413.73 3 0 0
2025-02-10(星期一) 9 3616.72 401.85 3 1 468.31
2025-02-08(星期六) 0 0 0 0 1 368.57
2025-02-07(星期五) 11 4953.42 450.31 2 0 0
2025-01-27(星期一) 14 6256.82 446.91 4 0 0
2025-01-26(星期日) 5 2342.94 468.58 2 1 399.37
2025-01-23(星期四) 0 0 0 0 1 368.44
2025-01-22(星期三) 0 0 0 0 1 1.24
2025-01-18(星期六) 0 0 0 0 1 1.18
1970-01-01(星期四) 1 468.4 468.4 1 0 0
本月 43 18542.7 431.22 2 2 836.88
上月 19 8599.76 452.61 2 4 770.23
+
+ + +
(二)蜀创
+ + + +
2.1 汇总统计
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
日期支付订单支付金额平均金额人均订单退款数退款金额
2025-02-13(星期四) 8 3149.54 393.69 2 3 1305.68
2025-02-12(星期三) 18 7333.33 407.4 3 2 836.79
2025-02-11(星期二) 3 1305.55 435.18 3 0 0
2025-02-10(星期一) 2 736.84 368.42 2 0 0
2025-01-26(星期日) 0 0 0 0 1 450.86
2025-01-23(星期四) 0 0 0 0 4 1.27
本月 31 12525.26 404.04 3 5 2142.47
上月 0 0 0 0 5 452.13
+
+ +
+
+ + +`) + err := s.Send("jiangyong@batiao8.com", strings.Join(mess, "\n")) fmt.Println(err) } diff --git a/util/http.go b/util/http.go index 7194d7f..655ac04 100644 --- a/util/http.go +++ b/util/http.go @@ -6,6 +6,8 @@ import ( "fmt" "io" "net/http" + "net/url" + "strings" "time" ) @@ -72,6 +74,27 @@ func HttpPutJson(link string, header map[string]string, json []byte) ([]byte, er return io.ReadAll(resp.Body) } +func HttpPostForm(url string, headers map[string]string, data url.Values) ([]byte, error) { + req, err := http.NewRequest("POST", url, strings.NewReader(data.Encode())) + if err != nil { + return nil, err + } + + req.Header.Set("Content-Type", "application/x-www-form-urlencoded") + for k, v := range headers { + req.Header.Set(k, v) + } + + client := &http.Client{} + resp, err := client.Do(req) + if err != nil { + return nil, err + } + defer resp.Body.Close() + + return io.ReadAll(resp.Body) +} + // Get 请求 link:请求url func HttpGet(link string, header map[string]string) ([]byte, error) { req, err := http.NewRequest("GET", link, nil)