如何从 echo.Context.MultipartForm() 检索 []string 类型的 form.Value
How to retrieve form.Value of []string type from echo.Context.MultipartForm()
我正在解析来自 echo.Context
的多部分表单。我使用 form.Value
检索切片 ([]string
) 的值。 return 是一个带双括号的值。 (例如 [["this","something"]]
)。
我尝试从非切片 (string
) 值中读取,它 return 是正确的。
这会解析来自 c echo.Context
的表单
// Parse the Multipart form
form, err := c.MultipartForm()
if err != nil {
return dataModel, err
}
这将从表单中检索值。
product := form.Value["products"]
if len(product) > 0 {
dataModel.Product = form.Value["products"]
}
dataModel 定义了一个 JSON 结构如下:
// LockRequest is the model for incoming lock requests
type LockRequest struct {
Product []string `json:"products" form:"products" query:"products"`
}
dataModel.Product
returns 的值为[["crm","something"]]
。它可能正在创建一个列表列表。我想要 return ["crm","something"]
.
预计:["crm","something"]
实际:[["crm","something"]]
我意识到我错误地卷曲了数据。
curl -XPOST -H 'Content-Type: multipart/form-data' -F 'products=crm,something' http://localhost:50051/lockHandler
而不是
curl -XPOST -H 'Content-Type: multipart/form-data' -F 'products="crm","something"' http://localhost:50051/lockHandler
对我有用。
我正在解析来自 echo.Context
的多部分表单。我使用 form.Value
检索切片 ([]string
) 的值。 return 是一个带双括号的值。 (例如 [["this","something"]]
)。
我尝试从非切片 (string
) 值中读取,它 return 是正确的。
这会解析来自 c echo.Context
// Parse the Multipart form
form, err := c.MultipartForm()
if err != nil {
return dataModel, err
}
这将从表单中检索值。
product := form.Value["products"]
if len(product) > 0 {
dataModel.Product = form.Value["products"]
}
dataModel 定义了一个 JSON 结构如下:
// LockRequest is the model for incoming lock requests
type LockRequest struct {
Product []string `json:"products" form:"products" query:"products"`
}
dataModel.Product
returns 的值为[["crm","something"]]
。它可能正在创建一个列表列表。我想要 return ["crm","something"]
.
预计:["crm","something"]
实际:[["crm","something"]]
我意识到我错误地卷曲了数据。
curl -XPOST -H 'Content-Type: multipart/form-data' -F 'products=crm,something' http://localhost:50051/lockHandler
而不是
curl -XPOST -H 'Content-Type: multipart/form-data' -F 'products="crm","something"' http://localhost:50051/lockHandler
对我有用。