Go编译器未定义方法
我收到一个编译器错误w。写入未定义类型rest.ResponseWriter没有字段或方法写入 我创建了一个裸体测试文件,但遇到了相同的问题:Go编译器未定义方法,go,compiler-errors,Go,Compiler Errors,我收到一个编译器错误w。写入未定义类型rest.ResponseWriter没有字段或方法写入 我创建了一个裸体测试文件,但遇到了相同的问题: package server import ( "github.com/ant0ine/go-json-rest/rest" ) func WriteTest(w rest.ResponseWriter) { var bs []byte w.Write(bs) } 编译器所说的未定义的方法肯定是在re
package server
import (
"github.com/ant0ine/go-json-rest/rest"
)
func WriteTest(w rest.ResponseWriter) {
var bs []byte
w.Write(bs)
}
编译器所说的未定义的方法肯定是在responseWriter上定义的。Write。注意小写的r.rest.reponsWriter类型没有写入,它有以下方法:
Header
WriteJson
EncodeJson
WriteHeader
但是,它说http.ResponseWriter方法可以通过类型断言使用。因此,您应该能够编写以下内容:
package server
import (
"github.com/ant0ine/go-json-rest/rest"
"net/http"
)
func WriteTest(w rest.ResponseWriter) {
var bs []byte
w.(http.ResponseWriter).Write(bs)
}