作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Crystal 中 Kemal Web 框架的 kemal-session 模块的文档提供了这个 example :
require "kemal"
require "kemal-session"
get "/set" do |env|
env.session.int("number", rand(100)) # set the value of "number"
"Random number set."
end
get "/get" do |env|
num = env.session.int("number") # get the value of "number"
env.session.int?("hello") # get value or nil, like []?
"Value of random number is #{num}."
end
Kemal.run
我正在使用 Kemal 和 Websocket .我有一个类似于以下示例的代码。如果我无权访问 env
,我该如何使用 session ?
ws "/" do |socket|
# Send welcome message to the client
socket.send "Hello from Kemal!"
# Handle incoming message and echo back to the client
socket.on_message do |message|
socket.send "Echo back from server #{message}"
end
# Executes when the client is disconnected. You can do the cleaning up here.
socket.on_close do
puts "Closing socket"
end
end
最佳答案
Websocket 连接也产生上下文。您只需要像
这样从 block 中访问它ws "/" do |socket, env|
env.session.int?("hello")
end
关于session - 将 Kemal session 与 websocket 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41601033/
Kemal 使用处理程序中间件缓存响应 我正在尝试使用 Kemal 缓存一些 GET 请求。 class CachingHandler < Kemal::Handler property ca
我一直在尝试使用 Crystal 和 Kemal 创建一个非阻塞服务器,它将 (a) 监听发送给它的 UDP 消息流,然后 (b) 然后将该消息转发到 WebSocket 到任何已启动的浏览器ws 连
Kemal 目前允许通过以下方式设置配置选项: Kemal.config.env = "开发" Kemal.config.port = "3456" 我想做一些类似于 block 的事情: 配置|co
Crystal 中 Kemal Web 框架的 kemal-session 模块的文档提供了这个 example : require "kemal" require "kemal-session" g
我是一名优秀的程序员,十分优秀!