我想使用包含图像的request.Body(type io.ReadCloser)
,但不想使用ioutil.ReadAll()
,因为我想直接将该体写入文件并解码它,因此我只想使用对内容的引用来传递给进一步的函数调用。
我尝试创建多个读取器实例,例如下面所示。
package main
import (
"io/ioutil"
"log"
"strings"
)
func main() {
r := strings.NewReader("some io.Reader stream to be read\n")
a := &r
b := &r
log.Println(ioutil.ReadAll(*a))
log.Println(ioutil.ReadAll(*b))
}
但在第二次调用中,它总是返回nil
。
请帮我,如何为同一读取器传递多个独立的引用?
io.TeeReader
来捕获所读内容以供进一步参考,例如在bytes.Buffer
中。 - Volker