Я использую HTTP-запрос, используя golang, который выдает ответ в V XML. Как мы можем обработать этот ответ v xml в Golang? Мне нужно получить значение "sd_returnCode" и "sd_returnMsg"
ответ:
<?xml version="1.0" encoding="UTF-8" ?>
<vxml version="2.0">
<catch>
<return eventexpr="_event" messageexpr="_message" />
</catch>
<form id="saveCallHistory">
<var name="sd_returnCode" expr="0" />
<var name="sd_returnMsg" expr=""success"" />
<block>
<return namelist=" sd_returnCode sd_returnMsg "/>
</block>
</form>
</vxml>
Код:
resp, err := http.Get("http://exmaple.com/callHistory/create?call.value=0002,1,20200413,94223,1234,00:49,T,E,R,62410,SPEAK_FREELY,1326,X,153139815&call.bm%5B0%5D.value=1234,20200413,94227,1234,20200413,94227,A,0,A,Q,262,4,0,0,H,N,0,00,0,00,1,0,2,0,0,,,0,T,F,,0,0,0,,I,Q,0,N&call.bm%5B0%5D.events=")
if err != nil {
log.Fatalln(err)
}
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
log.Fatalln(err)
}
log.Println(string(body))
Я пытался создать структуру но это дает ниже ошибку
.\test.go:10:20: invalid identifier character U+0300 '̀'
.\test.go:10:20: syntax error: unexpected ̀, expecting semicolon or newline or }
.\test.go:12:19: invalid identifier character U+0300 '̀'
.\test.go:50:24: syntax error: unexpected vxmlForm, expecting comma or )
мои структуры
type VXML struct {
XMLName xml.Name ̀`xml:"vxml"`
Catch string `xml:"catch"`
Forms Forms ̀`xml:"form"`
}
type Forms struct {
VarValues []VarValues `xml:var`
}
type VarValues struct {
Name string `xml:name,attr`
Expr string `xml:expr,attr`
}