代码拉取完成,页面将自动刷新
package sms
import "encoding/json"
type multixsend struct {
appid string
appkey string
signType string
project string
multi []map[string]interface{}
tag string
}
const multixsendURL = Server + "/message/multixsend"
type multi struct {
to string
vars map[string]string
}
func CreateMulti() *multi {
return &multi{"", make(map[string]string)}
}
func (m *multi) SetTo(to string) *multi {
m.to = to
return m
}
func (m *multi) AddVar(key string, val string) *multi {
m.vars[key] = val
return m
}
func (m *multi) AddVars(data map[string]string) *multi {
for k, v := range data {
m.AddVar(k, v)
}
return m
}
func (m *multi) Get() map[string]interface{} {
item := make(map[string]interface{})
item["to"] = m.to
item["vars"] = m.vars
return item
}
func CreateMultiXsend(config map[string]string) *multixsend {
return &multixsend{config["appid"], config["appkey"], config["signType"], "", nil, ""}
}
func (m *multixsend) SetProject(project string) *multixsend {
m.project = project
return m
}
func (m *multixsend) AddMulti(multi map[string]interface{}) *multixsend {
m.multi = append(m.multi, multi)
return m
}
func (m *multixsend) SetTag(tag string) *multixsend {
m.tag = tag
return m
}
func (m *multixsend) MultiXsend() string {
config := make(map[string]string)
config["appid"] = m.appid
config["appkey"] = m.appkey
config["signType"] = m.signType
req := make(map[string]string)
req["appid"] = m.appid
req["project"] = m.project
if m.signType != "normal" {
req["sign_type"] = m.signType
req["timestamp"] = _GetTimestamp()
req["sign_version"] = "2"
}
if m.tag != "" {
req["tag"] = m.tag
}
req["signature"] = _CreateSignature(req, config)
//v2 数字签名 multi 不参与计算
data, err := json.Marshal(m.multi)
if err == nil {
req["multi"] = string(data)
}
return _Post(multixsendURL, req)
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。