分享
golang xml解析
别人说我名字很长 · · 11699 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
xml是一个远程地址
<returnsms> <returnstatus>Success</returnstatus> <message>ok</message> <remainpoint>150528</remainpoint> <taskID>518334</taskID> <successCounts>1</successCounts> </returnsms>
解析
//xml的struct结构
type Duanxin struct {
Returnstatus string `xml:"returnstatus"`
Message string `xml:"message"`
Remainpoint string `xml:"remainpoint"`
TaskID string `xml:"taskID"`
SuccessCounts string `xml:"successCounts"`
}
//发手机短信
func Send_duanxin(mobile int64, content string) (dx Duanxin, err error) {
m := strconv.FormatInt(mobile, 10)
if len(content) < 30 {
return dx, errors.New("内容少于30个字符")
}
content = content + "【XX公司发送】"
SendUrl := beego.AppConfig.String("sendurl")
url := SendUrl + "&mobile=" + m + "&content=" + content
resp, err := http.Get(url)
if err != nil {
return dx, err
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
return dx, err
}
err = xml.Unmarshal(body, &dx)//好方便,就这样就解析了xml,so关键是xml的结构
return dx, err
}
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信11699 次点击
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
<returnsms> <returnstatus>Success</returnstatus> <message>ok</message> <remainpoint>150528</remainpoint> <taskID>518334</taskID> <successCounts>1</successCounts> </returnsms>
解析
//xml的struct结构
type Duanxin struct {
Returnstatus string `xml:"returnstatus"`
Message string `xml:"message"`
Remainpoint string `xml:"remainpoint"`
TaskID string `xml:"taskID"`
SuccessCounts string `xml:"successCounts"`
}
//发手机短信
func Send_duanxin(mobile int64, content string) (dx Duanxin, err error) {
m := strconv.FormatInt(mobile, 10)
if len(content) < 30 {
return dx, errors.New("内容少于30个字符")
}
content = content + "【XX公司发送】"
SendUrl := beego.AppConfig.String("sendurl")
url := SendUrl + "&mobile=" + m + "&content=" + content
resp, err := http.Get(url)
if err != nil {
return dx, err
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
return dx, err
}
err = xml.Unmarshal(body, &dx)//好方便,就这样就解析了xml,so关键是xml的结构
return dx, err
}