admin管理员组文章数量:1432274
【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(¶ms)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
版权声明:本文标题:【Go】 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1700974407a329482.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论