我對Go很新,所以我很抱歉如果這是一個微不足道的問題。帶有嵌套參數的POST請求
我目前正在嘗試編寫一個函數,該函數使用嵌套參數哈希創建POST請求。因此,在動態語言的等價的調用如javascript是:
$.post('http://example.com', {level1: {level2: 'foo'}});
在我去的代碼,我現在有嵌套以下列方式哈希:
func (runner *Runner) post(args... interface{}) interface{} {
form_url := getString(args[0])
form_data := ???
http.PostForm(form_url, form_data)
實際類型爲表單數據(接口{})由第三方庫提供,所以我不能真正改變它。
的問題是PostForm預計,表單數據url.Values類型,這是定義爲
type Values map[string][]string
什麼是最好的處理呢?我的結論到目前爲止,我需要編寫,將HTTP編碼嵌套哈希和具有以下簽名的函數:
func httpEncodeNestedMap(data interface{}) map[string][]string {...}
什麼是圍棋的慣用實現這一點?
謝謝。