写了个go版本的阿里云发短信服务,短信能成功发送情况下,期待的是有有效信息的数据, 但返回的response 被decode后显示{{}},想知道什么原因导致的?

radrupt · · 1516 次点击
谢谢,找到原因了,SmsResponse构造错了 error ``` type ( SmsResult struct { RequestId string `json:"RequestId"` Code string `json:"Code"` Message string `json:"Message"` BizId string `json:"BizId"` } SmsResponse struct { SendSmsResponse SmsResult `json:"SendSmsResponse"` } ) ``` correct ``` type ( SmsResponse struct { RequestId string `json:"RequestId"` Code string `json:"Code"` Message string `json:"Message"` BizId string `json:"BizId"` } ) ```
#2
更多评论
把http请求返回的东西都打印出来 resp, err := http.Get(uri) if err != nil { return SmsResult{}, err } fmt.Printf("resp:%#v\n", resp) defer resp.Body.Close() content, err := ioutil.ReadAll(resp.Body) if err != nil { return SmsResult{}, err } fmt.Printf("content:%#v\n", string(content)) var sr SmsResponse var sresult SmsResult err = json.Unmarshal(content, &sr) if err != nil { return SmsResult{}, err }
#1