猿问

Go编译器未定义的方法

我收到编译器错误“w.Write undefined(类型rest.ResponseWriter没有字段或方法Write)”


我创建了一个裸骨测试文件并遇到了同样的问题:


package server


import (

        "github.com/ant0ine/go-json-rest/rest"

)


func WriteTest(w rest.ResponseWriter) {

        var bs []byte

        w.Write(bs)

}

编译器说没有定义的方法肯定在rest包里。


小怪兽爱吃肉
浏览 160回答 1
1回答

慕桂英3389331

rest.ReponseWriter 类型没有 Write,它有以下方法:HeaderWriteJsonEncodeJsonWriteHeader但是,它在评论中说 http.ResponseWriter 方法可通过类型断言使用。所以你应该能够写出以下内容:package serverimport (        "github.com/ant0ine/go-json-rest/rest"        "net/http")func WriteTest(w rest.ResponseWriter) {        var bs []byte        w.(http.ResponseWriter).Write(bs)}
随时随地看视频慕课网APP

相关分类

Go
我要回答