[Golang系列] GOFLY在线客服系统-gin框架升级http连接为websocket-GO语言实现开源独立部署客服系统
2023-02-18 15:36:14 时间
gin框架实现websocket服务非常简单,只需要升级一下http请求,就可以实现了
比如下面的控制器部分代码
//包级变量,升级器 var upgrader = websocket.Upgrader{} func init() { //初始化 upgrader = websocket.Upgrader{ ReadBufferSize: 1024, WriteBufferSize: 1024, // 解决跨域问题 CheckOrigin: func(r *http.Request) bool { return true }, } }
func VisitorWebsocketServer(c *gin.Context) { conn, err := upgrader.Upgrade(c.Writer, c.Request, nil) if err != nil { log.Println("upgrade error:", err) return } for { //接受消息 var receive []byte messageType, receive, err := conn.ReadMessage() if err != nil { log.Println(err) return } log.Println(string(receive), messageType) } }
增加api路由
wsGroup := engine.Group("/ws") { wsGroup.GET("/v2/visitor", middleware.Ipblack, wsV2.VisitorWebsocketServer) }
前端连接访问就可以了
ws://xxxxxxxx/ws/v2/visitor
相关文章
- 什么新东西值得学「GitHub 热点速览 v.22.29」
- 用 40 块搞个游戏机“万能卡”「GitHub 热点速览 v.22.27」
- 《HelloGitHub》第 75 期
- 叮,GitHub 到账 550 美元「GitHub 热点速览 v.22.26」
- 这就是艺术「GitHub 热点速览 v.22.25」
- 想学嵌入式?要不一起玩 Arduino 吧
- GitHub 官方大动作频频「GitHub 热点速览 v.22.24」
- 中国程序员容易发错音的单词「GitHub 热点速览 v.22.23」
- 解锁!玩转 HelloGitHub 的新姿势
- 人体调优不完全指南「GitHub 热点速览 v.22.22」
- 《HelloGitHub》第 74 期
- 上半年最中意的 GitHub 更新「GitHub 热点速览 v.22.21」
- GitHub 毕业年鉴「GitHub 热点速览 v.22.20」
- 一个程序的自我修养「GitHub 热点速览 v.22.19」
- 《HelloGitHub》第 73 期
- 程序员延寿指南「GitHub 热点速览 v.22.17」
- 马里奥制造,Ready~~GO!「GitHub 热点速览 v.22.16」
- 另类终端「GitHub 热点速览 v.22.15」
- 一起来作画吧「GitHub 热点速览 v.22.14」
- 你也可以很硬核「GitHub 热点速览 v.22.13」