2015-08-26 185 views
0

陣列對於這個請求GET http://localhost:8080/path?my_key%5B%5D=3&my_key%5B%5D=4&my_key%5B%5D=5如何獲得http請求

我無法從my_key獲取數據。我試過req.URL.Query()["my_key"]。我可以得到它,如果我改變請求編碼從my_key%5B%5D=4&my_key%5B%5D=5my_key=4&my_key=5

我怎樣才能得到請求的URL在my_key[]=value

回答

3

使用形式net/url

package main 

import (
    "fmt" 
    "net/url" 
) 

func main() { 
    utmp := "GET http://localhost:8080/path?my_key%5B%5D=3&my_key%5B%5D=4&my_key%5B%5D=5" 
    u, err := url.Parse(utmp) 
    if err != nil { 
     panic(err) 
    } 
    fmt.Println(u.Query()["my_key[]"]) 
} 

http://play.golang.org/p/8aQ00qaa9j

你關鍵是"my_key[]"不是"my_key"