body.Read 未定义(类型 *io.ReadCloser 没有字段或方法 Read)

我似乎无法解决这个奇怪的错误。这是我的代码:


resp, err := http.Get("example.com/my/text/file.conf")

...

err = parseEvent(eventchan, &resp.Body)


func parseEvent(eventchan chan Event, body *io.ReadCloser) error {

raw := make([]byte, 1024*1024*32, 1024*1024*32)

n, err := body.Read(raw)

我得到这个奇怪的错误:


./igen.go:91: body.Read 未定义(类型 *io.ReadCloser 没有字段或方法读取)


第 91 行是n, err := body.Read(raw)上面的行。


我错过了什么?Golang.org 告诉我 ReadCloser 实现了 Reader,它具有Read(p []byte) (n int, err error)我试图调用的方法。


隔江千里
浏览 315回答 1
1回答

拉丁的传说

您的参数是body *io.ReadCloser- 表示指向接口的指针。ReadCloser,界面,有Read()。只需将您的函数签名更改为:func parseEvent(eventchan chan Event, body io.ReadCloser) error
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go