• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

[Golang系列] GOFLY在线客服系统-gin框架升级http连接为websocket-GO语言实现开源独立 ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap