2017-08-28 24 views
-5

我尝试动态SLIC传递给该jsonstr片如何追加切片字节数组中golang

var catlist []string 
var jsonStr = []byte(`{"categoryList":`+catlist+`}`) 

,但我发现这个错误

invalid operation: "{\"categoryList\":" + catlist (mismatched types string and []string) 

我怎样才能解决这个错误

+1

为什么你想要手动构建JSON?使用struct或'map [string] interface {}'。看看[https://blog.golang.org/json-and-go](https://blog.golang.org/json-and-go) – putu

+2

这不是在golang中做json的习惯方式。以下是一些示例:https://gobyexample.com/json – papey

回答

-2
data := make(map[string]interface{}) 
     data["categoryList"] = catlist 
     bytearray, err := json.Marshal(data) 
     req, err := http.NewRequest("POST", url, bytes.NewBuffer(bytearray)) 
+1

尽管此链接可能回答此问题,但最好在此处包含答案的重要部分,并提供供参考的链接。如果链接页面更改,则仅链接答案可能会失效。 - [来自评论](/ review/low-quality-posts/17162559) – Mistalis

-1

您正在打印string[]string !!这是不可能的! 您必须使用json包: Package json