gpt4 book ai didi

ruby - Sinatra 与 EventMachine WebSockets 一起使用是否成功?

转载 作者:数据小太阳 更新时间:2023-10-29 06:23:48 24 4
gpt4 key购买 nike

我已经使用 Sinatra 一段时间了,我想通过 websockets 推送数据来为我的网络应用程序添加一些实时功能。

我已经成功地单独使用了 gem“em-websocket”,但无法编写一个具有 sinatra 网络服务器和网络套接字服务器的 ruby​​ 文件。

我试过旋转运行!或开始!方法在单独的线程中关闭但没有成功。

有人用过这个吗?

我想将它们放在同一个文件中,这样我就可以在两个服务器之间共享变量。

最佳答案

没试过,但应该不会太难:

require 'em-websocket'
require 'sinatra/base'
require 'thin'

EM.run do
class App < Sinatra::Base
# Sinatra code here
end

EM::WebSocket.start(:host => '0.0.0.0', :port => 3001) do
# Websocket code here
end

# You could also use Rainbows! instead of Thin.
# Any EM based Rack handler should do.
Thin::Server.start App, '0.0.0.0', 3000
end

此外,Cramp有一个直接与 Thin/Rainbows 一起工作的 websocket 实现!您可能能够提取,因此您甚至不需要在另一个端口上运行服务器。

关于ruby - Sinatra 与 EventMachine WebSockets 一起使用是否成功?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2999430/

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