Sinatra会议

时间:2016-10-04 23:58:25

标签: ruby session websocket sinatra

get '/' do
if !request.websocket?
  erb :index
else
request.websocket do |ws|
  ws.onopen do
     content_type :json  
    u = User.first(:username => session[:username])   
      ws.send({:msg => "start", :player_id => u.id.to_s,})

    settings.sockets << ws
  end
  ws.onmessage do |msg|
    EM.next_tick { settings.sockets.each{|s| s.send(msg) } }
  end
  ws.onclose do
    warn("websocket closed")
    settings.sockets.delete(ws)
  end
end
end
end

在我的网络套接字握手中,我似乎无法让用户会话工作。除了在Web套接字请求期间,所有地方都可以工作。它每次都是空的。

在我的应用中,会话设置。

enable :sessions
set(:session_fail, '/login')
set(:session_secret, 'secretsession')

0 个答案:

没有答案