我已經(jīng)看到了如何使用 net/http PostForm 將基本字符串映射作為 POST 請求發(fā)送的以下示例:如何在 Go 中發(fā)送 POST 請求?但是我需要發(fā)布的數(shù)據(jù)稍微復(fù)雜一些,因為它有嵌套的 json / 嵌套的字符串映射。我需要發(fā)布的數(shù)據(jù)示例:{“MyAttributes”:{“AttributeOne”:“一個”,“AttributeTwo”:“兩個”}}net/url 值可以表示這種嵌套數(shù)據(jù)和/或如何將其傳遞給 net/http PostForm?
1 回答

慕雪6442864
TA貢獻(xiàn)1812條經(jīng)驗 獲得超5個贊
這是可能的
package main
import (
"encoding/json"
"log"
"net/http"
"net/url"
)
type Attributes struct {
AttributeOne string
AttributeTwo string
}
func main() {
attributes := Attributes{"one", "two"}
data, err := json.Marshal(attributes)
if err != nil {
log.Fatal("bad", err)
}
values := url.Values{}
values.Set("MyAttributes", string(data))
resp, error := http.PostForm("localhost:2021", values)
// use resp and error later
}
- 1 回答
- 0 關(guān)注
- 117 瀏覽
添加回答
舉報
0/150
提交
取消