在 http 响应中将任意字符串编码为 JSON

Encode arbitrary string to JSON in http response

我有一个 JSON 的字符串,我想将其编码为 json 到 http 响应中。

这returns响应中的一个字符串:

str := "{\"key1\":{\"key2\":\"value1\",\"key3\":\"value2\"}}"
err := json.NewEncoder(w).Encode(str)

我试图先将字符串编组为 JSON。这给了我另一串随机字节。

str := "{\"key1\":{\"key2\":\"value1\",\"key3\":\"value2\"}}"
js, _ := json.Marshal(str)
err := json.NewEncoder(w).Encode(js)

解决方案(w是responseWriter)

str := "{\"key1\":{\"key2\":\"value1\",\"key3\":\"value2\"}}"
w.Write([]byte(str))