gpt4 book ai didi

ruby-on-rails - 升级到 WebSocket 失败与未经授权的连接尝试被拒绝

转载 作者:行者123 更新时间:2023-12-02 03:56:36 26 4
gpt4 key购买 nike

使用 Rails 5 和 ActionCable

“无法升级到 WebSocket”与“未经授权的连接尝试被拒绝”。有人可以告诉我这两个错误之间的区别以及它们可能在哪些功能下发生吗?我相信“未经授权的连接尝试被拒绝”发生在

App.cable = ActionCable.createConsumer();

我确实有:

def find_verified_user 
if verified_user = env['warden'].user
verified_user
else
reject_unauthorized_connection
end
end

但我不确定升级错误。

我真正想做的是捕获超时用户(未注销,但超时)尝试发送消息的情况。所以我认为我不必在连接上捕获它,而是根据请求捕获它。有什么办法可以根据请求处理错误吗?

此处的最终目标是在超时用户尝试发送消息时将其重定向到登录页面。现在,如果超时的用户发送消息,则当他们点击发送时该消息不会显示,并且不会向用户说明原因。

最佳答案

“未经授权的连接尝试被拒绝”是 reject_unauthorized_connection 调用的直接结果。

“无法升级到 WebSocket”是由于 connect 调用 reject_unauthorized_connection 导致的。这意味着您的套接字连接尝试失败,并且您没有从 HTTP 模式切换(“升级”)到 WebSockets 模式。

如果我想实现超时用户发送消息的权限,我只需将上次发送消息的时间保存在数据库中 - 在每条新消息之前检查它。

关于ruby-on-rails - 升级到 WebSocket 失败与未经授权的连接尝试被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43709040/

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