登录
首页 >  Golang >  Go问答

gorilla websocket - closeHandler 链

来源:stackoverflow

时间:2024-04-21 20:09:37 137浏览 收藏

今天golang学习网给大家带来了《gorilla websocket - closeHandler 链》,其中涉及到的知识点包括等等,无论你是小白还是老手,都适合看一看哦~有好的建议也欢迎大家在评论留言,若是看完有所收获,也希望大家能多多点赞支持呀!一起加油学习~

问题内容

在 gorilla websocket 中,websocket.Conn 结构体有一个方法 SetCloseHandler(),用于设置连接的关闭处理程序。

如果传递的处理程序是 nil,则它使用默认处理程序。

我不想保留默认处理程序,但在默认处理程序之前或之后执行其他操作。

又名。处理程序链,例如一些方法,例如:

  • prependCloseHandler(h)

    在处理程序链的开头添加一个处理程序。

  • appendCloseHandler(h)

    在处理程序链的末尾添加一个处理程序。

然后链中的每个处理程序将按顺序执行。

是否有办法做到这一点,将默认处理程序作为我的新处理程序的一部分?

谢谢。


正确答案


该包不提供直接机制来预先或附加 close message 的处理程序。使用此函数作为函数的启动器:

closeHandler := conn.CloseHandler()
conn.SetCloseHandler(func(code int, text string) error {
    // Add your code here ...
    err := closeHandler(code, text)
    // ... or here.
    return err
})

请注意,关闭处理程序是在从对等方收到关闭消息时调用的,而不是在连接关闭时调用的。大多数应用程序都应该可以很好地使用默认处理程序。

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《gorilla websocket - closeHandler 链》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>