gpt4 book ai didi

ruby - 使用 em-websocket-client 将消息发送到 websocket 服务器

转载 作者:数据小太阳 更新时间:2023-10-29 09:02:07 28 4
gpt4 key购买 nike

我是 websockets 的新手,正在尝试将消息发送到需要订阅请求的现有 websocket 服务器。我试过:

require 'em-websocket-client'

EM.run do
ws = EventMachine::WebSocketClient.connect("ws://localhost:3000")
ws.send_msg "this is a test message"
end

但是我明白了

'undefined method `version' for nil:NilClass'. 

我可以通过将 send_mess 行替换为

来从服务器正确读取流数据
  ws.stream do |msg|
puts "received msg <#{msg}>"
end

所以至少我知道我正在正确连接到服务器。我做错了什么?

最佳答案

显然,您必须将对 send_msg 的调用放在 WebSocketClient callback 函数中,如下所示:

require 'em-websocket-client'

EM.run do
ws = EventMachine::WebSocketClient.connect("ws://localhost:3000")
ws.callback do
ws.send_msg "this is a test message"
end
end

参见 this获取更多(但不幸的是,信息不够)。

关于ruby - 使用 em-websocket-client 将消息发送到 websocket 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33091064/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com