diff --git a/internal/nodes/http_writer.go b/internal/nodes/http_writer.go index 2fa54aa..8d00744 100644 --- a/internal/nodes/http_writer.go +++ b/internal/nodes/http_writer.go @@ -407,7 +407,9 @@ func (this *HTTPWriter) PrepareCache(resp *http.Response, size int64) { var filterReader = readers.NewFilterReaderCloser(resp.Body) this.cacheIsFinished = true var hasError = false - filterReader.Add(func(p []byte, err error) error { + filterReader.Add(func(p []byte, readErr error) error { + // 这里不用处理readErr,因为只要把成功读取的部分写入缓存即可 + if hasError { return nil } diff --git a/internal/utils/readers/reader_closer_filter.go b/internal/utils/readers/reader_closer_filter.go index a4a0cd0..08c976a 100644 --- a/internal/utils/readers/reader_closer_filter.go +++ b/internal/utils/readers/reader_closer_filter.go @@ -4,7 +4,7 @@ package readers import "io" -type FilterFunc = func(p []byte, err error) error +type FilterFunc = func(p []byte, readErr error) error type FilterReaderCloser struct { rawReader io.Reader