2 回答
TA贡献1827条经验 获得超7个赞
见到 Gopher 总是很高兴。您可能想知道一些事情,Go 支持多值返回,因为一个函数可以返回多个值。
byteInfo, err := json.Marshal(data) // has two values returned
// check if there was an error returned first
if err != nil{
// handle your error here
}
现在在你的代码下面的行
// error here
req, err := http.NewRequest("POST", "127.0.0.1:8081/", json.Marshal(data))
会变成这个
// error here
req, err := http.NewRequest("POST", "127.0.0.1:8081/", bytes.NewBuffer(byteInfo))
您可以继续使用其余代码。快乐编码!
TA贡献1804条经验 获得超2个赞
json.Marshal返回[]byte,error这意味着您将 4 个值传递给http.NewRequest.
您应该json.Marshal先调用,然后将结果用于http.NewRequest.
body, err := json.Marshal(data)
if err != nil {
// deal with error
}
req, err := http.NewRequest("POST", "127.0.0.1:8081/", body)
- 2 回答
- 0 关注
- 110 浏览
添加回答
举报