第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

Golang socket io無法建立websocket連接

Golang socket io無法建立websocket連接

Go
繁華開滿天機(jī) 2022-12-19 21:20:21
這是我的 socket io Go 服務(wù)器,基本上遵循包的示例代碼:func main() {    server := socketio.NewServer(nil)    server.OnConnect("/", func(s socketio.Conn) error {        s.SetContext("")        fmt.Println("connected:", s.ID())               return nil    })    server.OnEvent("/", "notice", func(s socketio.Conn, msg string) {        fmt.Println("notice:", msg)        s.Emit("reply", "have "+msg)    })    server.OnEvent("/chat", "msg", func(s socketio.Conn, msg string) string {        s.SetContext(msg)        return "recv " + msg    })    server.OnEvent("/", "bye", func(s socketio.Conn) string {        last := s.Context().(string)        s.Emit("bye", last)        s.Close()        return last    })    server.OnError("/", func(s socketio.Conn, e error) {        fmt.Println("meet error:", e)    })    server.OnDisconnect("/", func(s socketio.Conn, reason string) {        fmt.Println("closed", reason)    })    go server.Serve()    defer server.Close()    mux := http.NewServeMux()        mux.Handle("/socket.io/", server) // socket io        log.Println("Serving at localhost:8000...")    log.Fatal(http.ListenAndServe(":8000", cors.Default().Handler(mux)))}這是我的客戶端代碼:<script src="https://cdn.socket.io/4.5.0/socket.io.min.js"  integrity="sha384-7EyYLQZgWBi67fBtVxw60/OWl1kjsfrPFcaU0pp0nAh+i8FD068QogUvg85Ewy1k" crossorigin="anonymous"></script><script>  const socket = io("http://localhost:8000");  socket.emit("msg", "abc")</script>我的客戶端一直在發(fā)送長輪詢 GET 請求,無法建立 websocket 連接。我懷疑這可能與我的服務(wù)器響應(yīng)有關(guān)?從瀏覽器開發(fā)工具來看,我的響應(yīng)負(fù)載前面似乎有一些隨機(jī)字節(jié):
查看完整描述

1 回答

?
猛跑小豬

TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個(gè)贊

您正在使用客戶端的 4.5.0 版以及(我假設(shè) -請使用最少的可重現(xiàn)示例github.com/googollee/go-socket.io。go包自述文件指出:

目前這個(gè)庫支持 1.4 版本的 Socket.IO 客戶端。它現(xiàn)在支持房間、命名空間和廣播。

套接字 io 文檔提供了一個(gè)兼容性圖表,顯示服務(wù)器的 v1僅客戶端的版本 1 支持。所以以下似乎有效(游樂場- 注意我也做了細(xì)微的改變所以輸出消息):

<script src="https://cdn.socket.io/socket.io-1.7.4.min.js"></script>

<script>

  const socket = io("http://localhost:8000");

  socket.emit("msg", "abc");

</script>

要使用更高版本的 Socket.IO,您需要一個(gè)支持更高版本協(xié)議的服務(wù)器。gosf似乎支持 v2,但我還沒有嘗試過。


查看完整回答
反對 回復(fù) 2022-12-19
  • 1 回答
  • 0 關(guān)注
  • 282 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號