0

我正在解析来自echo.Context. 我使用 检索切片 ( []string)的值form.Value。这将返回一个带有双括号的值。(例如。[["this","something"]])。

我尝试从非切片 ( string) 值中读取并正确返回。

这会从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返回的值为[["crm","something"]]。它可能正在创建一个列表列表。我希望它返回["crm","something"]

预期:["crm","something"] 实际:[["crm","something"]]

4

1 回答 1

0

我意识到我错误地卷曲了数据。

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

为我工作。

于 2019-04-02T22:00:57.873 回答