我需要生成以下 xml:
<AccessControlList>
<Grant>
<Grantee
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
<ID>xxxx-xx</ID>
<DisplayName>rahul.khan</DisplayName>
</Grantee>
<Permission>FULL_CONTROL</Permission>
</Grant>
</AccessControlList>
我的结构定义如下:
type Grantee struct {
Xmlns_xsi string `xml:"xmlns xsi,attr,omitempty"`
Xsi_type string `xml:"http://www.w3.org/2001/XMLSchema-instance type,attr,omitempty"`
ID string `xml:",omitempty"`
DisplayName string `xml:",omitempty"`
}
但是,当我整理此结构时,生成的结果 xml 文档如下所示:
<AccessControlList>
<Grant>
<Grantee
xmlns:XMLSchema-instance="http://www.w3.org/2001/XMLSchema-instance" XMLSchema-instance:type="CanonicalUser">
<ID>xxxx-xx</ID>
<DisplayName>rahul.khan</DisplayName>
</Grantee>
<Permission>FULL_CONTROL</Permission>
</Grant>
</AccessControlList>
结果,当文档被解组时,类型字段似乎没有被 aws-go-sdk 解析。
例如,这是我需要得到的未编组输出
Grantee: {
DisplayName: "rahul.khan",
ID: "xxxx-xx",
Type: "CanonicalUser"
},
Permission: "FULL_CONTROL"
}
相反,我得到的是:
Grantee: {
DisplayName: "rahul.khan",
ID: "xxxx-xx"
},
Permission: "FULL_CONTROL"
}
未编组的输出中似乎缺少 Type 属性。我在我的代码和 aws 生成的 xml 文档中看到的唯一区别是这一行
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser"
比/秒
xmlns:XMLSchema-instance="http://www.w3.org/2001/XMLSchema-instance" XMLSchema-instance:type="CanonicalUser"
感谢是否有人可以帮助我了解如何解决此问题?
慕运维8079593
相关分类