如何使用socket.io-client连接到标准websocket?

尝试使用socket.io-client连接到用Go编写的websocket服务器。我已经使用节点WebSocket库(npm成功连接因此,有效的Websocket代码如下所示:

  goSocketPort = 6060
  url = "ws://localhost:#{goSocketPort}/streamresults/"
  ws = new WebSocket(url)

  ws.on('open', ->
    log "socket opened"
  )

  ws.on('message', (message) ->
      console.log('received: %s', message)
    #log "Socket message: #{JSON.stringify message}"
  )

非常简单并且有效-另一端的套接字以设定的频率发送消息。但是我最初尝试使用socket.io-clientnpm),但无法继续使用。它肯定将websocket列为其首选传输,但是该死,如果我能连接它的话:

socket = ioClient.connect("#{url}", {port: goSocketPort, transports: ['xhr-polling', 'websocket']}) 

socket.on("connect", (r) ->
  log "connected to #{url}"
)

连接永远不会发生,因此不会on触发任何事件,并且代码会立即退出。我试过了:离开端口的url并将其添加到选项中,离开transports选项(根据文档,意思是“全部”),并使用http url。socket-io.client不是能够连接到一个“标准”的WebSocket的?

亚伦·杜福(Aaron Dufour)

根据我们的聊天,看来您被这个报价误导了:

socket.io客户端基本上是一个简单的HTTP Socket接口实现。它看起来与WebSocket类似,但是当用户的浏览器不支持WebSocket时,它提供了附加功能并利用了其他传输方式。

这意味着从与Socket.io客户端/服务器交互的客户端/服务器代码的角度来看,它看起来类似于WebSocket。但是,网络流量看起来与简单的WebSocket截然不同-连接后,除了在WebSocket之上构建的更强大的协议之外,还有初始握手。握手被描述在这里和消息协议这里(均是链接到Socket.IO协议规范)。

如果要编写WebSocket服务器,则最好只使用裸露的WebSocket接口,而不要使用Socket.io客户端,除非打算实现所有Socket.io协议。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用HTTPS从Node socket.io-client **连接到Node socket.io-server

来自分类Dev

使用标准Web套接字客户端连接到Socket.io服务器

来自分类Dev

如何将Meteor服务器连接到外部Websocket / Socket IO API?

来自分类Dev

如何将Meteor服务器连接到外部Websocket / Socket IO API?

来自分类Dev

使用WebSocket手动连接到socket.io 1.x,进行容量测试

来自分类Dev

使用WebSocket手动连接到socket.io 1.x,进行容量测试

来自分类Dev

如何使用System.js导入socket.io-client?

来自分类Dev

如何在socket.io-client上使用集群?

来自分类Dev

如何在KotlinJS中使用socket.io-client

来自分类Dev

如何使用socket.IO-client接收推送通知?

来自分类Dev

如何使用Twisted(或高速公路)连接到socket.io服务器?

来自分类Dev

如何使用socket.io从节点连接到telnet服务器

来自分类Dev

如何使用Cocos2dJS连接到Socket.IO服务器?

来自分类Dev

如何使用Twisted(或高速公路)连接到socket.io服务器?

来自分类Dev

如何使用socket.io从节点连接到telnet服务器

来自分类Dev

使用VUE或vue-socket.io连接Socket.io

来自分类Dev

使用Apache和Socket.io的代理WebSocket连接

来自分类Dev

无法使用Express Server连接到socket.io

来自分类Dev

将事件连接到socket.io

来自分类Dev

nginx + socket.io + ssl:WebSocket连接到'ws://wechat.pageguy.tech/socket.io/?EIO = 3&transport = websocket'失败:意外的响应代码:302

来自分类Dev

如何关闭socket.io连接

来自分类Dev

socket.io断开连接如何工作?

来自分类Dev

socket.io断开连接如何工作?

来自分类Dev

我如何知道连接的 socket.io 客户端正在使用哪种传输方式 websocket 或轮询?

来自分类Dev

socket.io-client无法连接

来自分类Dev

如何使用WebSocket将消息发送到Socket.io服务器

来自分类Dev

如何将所有套接字连接到Socket.io

来自分类Dev

React Native Socket.io如何从设备连接到本地节点服务器

来自分类Dev

如何通过SSL连接到Socket IO,由apache2提供文件

Related 相关文章

  1. 1

    如何使用HTTPS从Node socket.io-client **连接到Node socket.io-server

  2. 2

    使用标准Web套接字客户端连接到Socket.io服务器

  3. 3

    如何将Meteor服务器连接到外部Websocket / Socket IO API?

  4. 4

    如何将Meteor服务器连接到外部Websocket / Socket IO API?

  5. 5

    使用WebSocket手动连接到socket.io 1.x,进行容量测试

  6. 6

    使用WebSocket手动连接到socket.io 1.x,进行容量测试

  7. 7

    如何使用System.js导入socket.io-client?

  8. 8

    如何在socket.io-client上使用集群?

  9. 9

    如何在KotlinJS中使用socket.io-client

  10. 10

    如何使用socket.IO-client接收推送通知?

  11. 11

    如何使用Twisted(或高速公路)连接到socket.io服务器?

  12. 12

    如何使用socket.io从节点连接到telnet服务器

  13. 13

    如何使用Cocos2dJS连接到Socket.IO服务器?

  14. 14

    如何使用Twisted(或高速公路)连接到socket.io服务器?

  15. 15

    如何使用socket.io从节点连接到telnet服务器

  16. 16

    使用VUE或vue-socket.io连接Socket.io

  17. 17

    使用Apache和Socket.io的代理WebSocket连接

  18. 18

    无法使用Express Server连接到socket.io

  19. 19

    将事件连接到socket.io

  20. 20

    nginx + socket.io + ssl:WebSocket连接到'ws://wechat.pageguy.tech/socket.io/?EIO = 3&transport = websocket'失败:意外的响应代码:302

  21. 21

    如何关闭socket.io连接

  22. 22

    socket.io断开连接如何工作?

  23. 23

    socket.io断开连接如何工作?

  24. 24

    我如何知道连接的 socket.io 客户端正在使用哪种传输方式 websocket 或轮询?

  25. 25

    socket.io-client无法连接

  26. 26

    如何使用WebSocket将消息发送到Socket.io服务器

  27. 27

    如何将所有套接字连接到Socket.io

  28. 28

    React Native Socket.io如何从设备连接到本地节点服务器

  29. 29

    如何通过SSL连接到Socket IO,由apache2提供文件

热门标签

归档