fix: FromResponse not return error.

This commit is contained in:
eson 2018-12-23 00:15:24 +08:00
parent a0d8830242
commit 965d1e6d16

View File

@ -20,19 +20,10 @@ func FromHTTPResponse(resp *http.Response) (*Response, error) {
// 复制response 返回内容 并且测试是否有解压的需求 // 复制response 返回内容 并且测试是否有解压的需求
srcbuf, err := ioutil.ReadAll(resp.Body) srcbuf, err := ioutil.ReadAll(resp.Body)
if err != nil { if err != nil {
panic(err) return nil, err
} }
resp.Body.Close() resp.Body.Close()
// cbuf := bytes.NewBuffer([]byte{})
// _, err = io.Copy(cbuf, bytes.NewReader(srcbuf))
// if err != nil {
// panic(err)
// }
// resp.Body = ioutil.NopCloser(cbuf)
content := "" content := ""
srcReader := bytes.NewReader(srcbuf) srcReader := bytes.NewReader(srcbuf)
@ -40,14 +31,14 @@ func FromHTTPResponse(resp *http.Response) (*Response, error) {
defer r.Close() defer r.Close()
buf, err := ioutil.ReadAll(r) buf, err := ioutil.ReadAll(r)
if err != nil { if err != nil {
panic(err) return nil, err
} }
content = string(buf) content = string(buf)
} else if r, err := zlib.NewReader(srcReader); err == nil { } else if r, err := zlib.NewReader(srcReader); err == nil {
defer r.Close() defer r.Close()
buf, err := ioutil.ReadAll(r) buf, err := ioutil.ReadAll(r)
if err != nil { if err != nil {
panic(err) return nil, err
} }
content = string(buf) content = string(buf)
} else { } else {