我正在尝试为POST请求构建JSON有效负载:
var payload = []byte(`{"foo":"bar", "hello":"world"}`)
但是,我希望从现有字符串中插入值。我试过使用%s
,但这显然不是语法正确的:
var payload = []byte(`{"foo":%s, "hello":%s}`, val1, val2)
感觉我正在以完全错误的方式解决这个问题。任何建议,将不胜感激。感谢。
答案 0 :(得分:3)
要使用%s
,您需要格式化功能。
var payload = []byte(fmt.Sprintf(`{"foo":%q, "hello":%q}`, val1, val2))
(%q
与%s
类似,但为您添加引号)