gofiber: 请求参数是数组的处理
一,js处理数组的形式:
js的处理:
var addIdList = [];
for (i=0; i < content.length; i++) {
if (content[i].checked) {
addIdList.push(content[i].value);
}
}
console.log("选中的id:");
console.log(addIdList);
提交时形式如下:
addid[]: 38351
addid[]: 38334
addid[]: 38329
addid[]: 38276
二,服务端gofiber处理方法之一
1,代码:
imageIdList3 := []int{}
c.Context().PostArgs().VisitAll(func(key, value []byte) {
fmt.Println(string(key), string(value))
if string(key)=="addid[]" {
//imageIdList3
imgId,_ :=strconv.Atoi(string(value))
imageIdList3 = append(imageIdList3, imgId)
}
})
fmt.Println(imageIdList3)
2,打印效果:
[38351 38334 38329 38276]
三,服务端gofiber处理方法之二
1,代码:
imageIdList3 := []int{}
body := c.Body()
fmt.Println("请求的body")
fmt.Println(string(body))
body2,_ := url.ParseQuery(string(body))
fmt.Println("decode后的请求body内容:")
fmt.Println(body2)
idList := body2["addid[]"]
for i := 0; i < len(idList); i++ {
fmt.Println(idList[i])
imgId,_ :=strconv.Atoi(idList[i])
imageIdList3 = append(imageIdList3, imgId)
}
fmt.Println(imageIdList3)
2,打印效果:
38351
38334
38329
38276
[38351 38334 38329 38276]