如何在 REST API 中获取 post 发送的 xml
How to get the xml sent by post in a REST API
我想构建一个休息应用程序,我必须在其中获取 post 作为 xml 发送的值。数据是如何恢复的?
我正在使用 echo 框架。
您可以使用以下函数,其中“值”对应于包装标签名称。
func xmlEndpoint(c echo.Context) error {
// get xml from request body
xml := c.Request().Body
// parse xml
var data map[string]interface{}
if err := xml.Unmarshal(data); err != nil {
return err
}
// get value from xml
value := data["value"].(string)
}
您需要使用 Echo 的绑定功能,结合结构标签来提供您希望 XML 键的名称。
type DoThingRequest struct {
Name string `xml:"name"`
}
e.POST("/do_thing", func(c echo.Context) (err error) {
body := new(DoThingRequest)
if err := c.Bind(body); err != nil {
return
}
// Do some stuff...
}
有关绑定的详细信息和选项,请参阅 https://echo.labstack.com/guide/binding/。
我想构建一个休息应用程序,我必须在其中获取 post 作为 xml 发送的值。数据是如何恢复的?
我正在使用 echo 框架。
您可以使用以下函数,其中“值”对应于包装标签名称。
func xmlEndpoint(c echo.Context) error {
// get xml from request body
xml := c.Request().Body
// parse xml
var data map[string]interface{}
if err := xml.Unmarshal(data); err != nil {
return err
}
// get value from xml
value := data["value"].(string)
}
您需要使用 Echo 的绑定功能,结合结构标签来提供您希望 XML 键的名称。
type DoThingRequest struct {
Name string `xml:"name"`
}
e.POST("/do_thing", func(c echo.Context) (err error) {
body := new(DoThingRequest)
if err := c.Bind(body); err != nil {
return
}
// Do some stuff...
}
有关绑定的详细信息和选项,请参阅 https://echo.labstack.com/guide/binding/。