Go语言实现websocket与前端交互 - Go语言中文社区

Go语言实现websocket与前端交互


1、在https://www.golangtc.com/download/package下载第三方包websocket,点击Go!后,下载地址出现,点击就会下载第三方包


2、websocket会自动断开,看网上需要保持心跳,还有nginx的修改(没有生效),先用for死循环则不会断开,程序如下:

package websocketservice

import (
    . "domain/model"
    "infrastructure/log"
    "net/http"
    "time"

    "golang.org/x/net/websocket"
)

var ws *websocket.Conn

func GetWebsocketInstance() {
    http.Handle("/check", websocket.Handler(checkServiceHandler))
    http.Handle("/", http.FileServer(http.Dir(".")))
    err := http.ListenAndServe(":8087", nil)

    if err != nil {
        panic("ListenAndServe: " + err.Error())
    }
}

func checkServiceHandler(ws *websocket.Conn) {
    defer ws.Close()
    log.Error("begin")
    //  time.Sleep(60 * time.Second)
    for { //websocket若不实时发送数据,会自动断开
        time.Sleep(120 * time.Second)
        log.Error("Serviceresult", Serviceresult)
        err := websocket.JSON.Send(ws, Serviceresult)
        if err != nil {
            log.Error("send failure")
            //      break
        }
    }
}
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/u012189747/article/details/77878784
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2019-08-27 11:47:45
  • 阅读 ( 1875 )
  • 分类:前端

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢