如http库中所述,定义了以下内容:func Handle(pattern string, handler Handler)
type Handler interface { ServeHTTP(*Conn, *Request) }我如何websocket.Draft75Handler通过给它一个附加的参数(并告诉它如何处理该参数)来改进现有的处理程序(例如)?我正在尝试创建一个在其中包含一个通道一端的处理程序。它将使用该频道与程序的其他部分进行对话。我怎样才能使该通道进入处理程序函数?抱歉,这是一个愚蠢的问题。我是新手,因此决定通过阅读教程来学习,然后直接跳入代码。谢谢你的帮助!
1 回答
繁星coding
TA贡献1797条经验 获得超4个赞
如果类型是函数(如)websocket.Draft75Handler,则可以将其包装在闭包中:
func MyHandler(arg interface{}) websocket.Draft75Handler {
return func(c *http.ConnConn) {
// handle request
}
}
func main() {
http.Handle("/echo", MyHandler("argument"))
err := http.ListenAndServe(":12345", nil)
if err != nil {
panic("ListenAndServe: " + err.String())
}
}
- 1 回答
- 0 关注
- 196 浏览
添加回答
举报
0/150
提交
取消