猿问

正确使用 map[string]interface{}?

我有两个相关的问题,我不想为这两个问题打开一个新线程:


鉴于以下代码:


1    type Request struct {

2       Values map[string]interface{}

3    }

4

5    func (r Request) Send() {

6       client := &http.Client{}

7       resp, _ := http.Post("http://example.com", "text/json", &r.Values)

8    }

我们的想法是能够未知量的一个块发送key => value,key => key => value等我们的API端点。


问题 1:


我如何分配给Request.Values?我们可能需要使用的一个示例用例如下(请原谅 PHP 代码,我们正在转换):


'name' => [ $first, $last ],

'address' => [ 'city' => 'city', 'state' => 'state' ],

'country' => 'US'

在这个例子中,我们有key => value, key => [ values ], 和key => [ key => value ]


我怎样才能把它分配给完全相同的值Request.Values?


问题2:


显然Values是 type map[string]interface{},我如何将其转换为 typeio.Reader以便我可以将值发送到服务器?


对这两个问题的任何指导都非常感谢。


繁花不似锦
浏览 393回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答