This commit is contained in:
gospider
2024-12-15 21:04:07 +08:00
parent a8266d153b
commit 59673bc7b2
3 changed files with 22 additions and 10 deletions

View File

@@ -292,16 +292,23 @@ func (obj *Response) ReadBody() (err error) {
}
obj.readBody = true
bBody := bytes.NewBuffer(nil)
if obj.requestOption.Bar && obj.ContentLength() > 0 {
_, err = io.Copy(&barBody{
bar: bar.NewClient(obj.response.ContentLength),
body: bBody,
}, obj.Body())
} else {
_, err = io.Copy(bBody, obj.Body())
done := make(chan struct{})
go func() {
if obj.requestOption.Bar && obj.ContentLength() > 0 {
_, err = io.Copy(&barBody{
bar: bar.NewClient(obj.response.ContentLength),
body: bBody,
}, obj.Body())
} else {
_, err = io.Copy(bBody, obj.Body())
}
close(done)
}()
select {
case <-obj.ctx.Done():
err = obj.ctx.Err()
case <-done:
}
if obj.requestOption.Logger != nil {
obj.requestOption.Logger(Log{
Id: obj.requestOption.requestId,