【Go】

编程入门 行业动态 更新时间:2024-10-24 17:23:29

【Go】

【Go】

没有什么好讲的,直接贴代码,消息格式我用的markdown。

sendMsg.go:

package mainimport ("flag""fmt""github/goccy/go-json""github/tidwall/gjson""io/ioutil""net/http""strings"
)func main() {// paramsvar msg stringflag.StringVar(&msg, "msg", "null", "空消息")flag.Parse()type Params struct {Msgtype  string `json:"msgtype"`Markdown struct {Content string `json:"content"`} `json:"markdown"`}params := Params{Msgtype: "markdown",Markdown: struct {Content string `json:"content"`}{Content: msg,},}//fmt.Printf("%v\n", params)json_date, err := json.Marshal(&params)if err != nil {fmt.Sprintf("序列化失败:%s", err)fmt.Println()}//fmt.Printf("序列化后:%v\n", string(json_date))// POSTvar wx_send_url = "=xxxxxx"//fmt.Println(wx_send_url)response, err := http.Post(wx_send_url, "text/html;application/json", strings.NewReader(string(json_date)))if err != nil {fmt.Println(err)}// Get errcodebody, err := ioutil.ReadAll(response.Body)defer response.Body.Close()errcode := gjson.Get(string(body), "errcode").String()if errcode != "0" {fmt.Println("fail")//fmt.Println(json.Unmarshal([]byte(str), &body))} else {fmt.Println("success")}
}

交叉编译参数的设置:
win 编译生成Linux下的可执行文件:

go env -w CGO_ENABLED=0
go env -w GOOS=linux
go env -w GOARCH=amd64

编译完记得改回来:

go env -w CGO_ENABLED=0
go env -w GOOS=windows
go env -w GOARCH=amd64

更多推荐

【Go】

本文发布于:2023-11-16 19:50:19,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1633959.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!