我有一个包含行的 JQuery 脚本
console.log("Killing "+selected)
$.post("http://127.0.0.1:8080/delete_birloki",{ birloki: selected})
它记录...
Killing france
Golang 处理程序开始于
func deleteBirloki(rw http.ResponseWriter, req *http.Request) {
dat,err := httputil.DumpRequest(req,true)
if err != nil {
fmt.Fprintf(rw,"BAD")
return
}
fmt.Println(string(dat))
打印出来的是
POST /delete_birloki HTTP/1.1
Host: 127.0.0.1:8080
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.8
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Cookie: weve_been_here_before=true; _ga=GA1.1.606577919.1412775218
Origin: http://127.0.0.1:8080
Referer: http://127.0.0.1:8080/config/?birloki=&north=&east=
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36
X-Requested-With: XMLHttpRequest
birloki%5B%5D=france
谁能解释为什么变量名被改变了? 在类似的情况下,我可以用
请求“birloki[]”birloki := req.PostFormValue("birloki[]")
但在这种情况下,即使那样似乎也行不通
最佳答案
好的 - 开枪吧。我是个白痴。
由于 Javascript 可爱的无类型特性,我发布的变量有时是字符串,有时是数组。
当它与 [] 一起出现时,它当然是一个数组 :-(
关于JQuery POST 到 Golang 破坏字段名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28618392/