如何解析只有一个标签的基本 XML 数据

How to parse basic XML data which has one tag

我可以解析复杂的 XML 结果,但我在这个简单的事情上失败了 api 返回像这样的简单答案

 xmlFile := <?xml version="1.0" encoding="utf-8" standalone="yes"?><TOKEN>C5F3DCFE370047ECAA9120F4E305B7D2</TOKEN>

我无法解析令牌。我尝试了一切但无法弄清楚。我正在使用这种语法:

s := strings.Split(string(result),">")
    s = strings.Split(s[2],"<")
    b.Token = s[0]

<?xml version="1.0" encoding="utf-8" standalone="yes"?><TOKEN>C5F3DCFE370047ECAA9120F4E305B7D2</TOKEN>如何解析这个(还有apireturns<?xml version="1.0" encoding="utf-8" standalone="yes"?><ERROR>a error </ERROR>信息)

要解组单独的顶级元素,您可以实现自定义 unmarshaler

type Response struct {
    Token string
    Error string
}

func (r *Response) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
    switch start.Name.Local {
    case "TOKEN":
        if err := d.DecodeElement(&r.Token, &start); err !=nil {
            return err
        }
    case "ERROR":
        if err := d.DecodeElement(&r.Error, &start); err !=nil {
            return err
        }
    }
    return nil
}

https://play.golang.org/p/OQy4ShS_vFx