ActionCable:从前端手动关闭连接
ActionCable: close the connection manually from front-end
我无法手动关闭套接字。
只有当我在浏览器中关闭一个标签时它才会退出。
Finished "/cable/" [WebSocket] for 127.0.0.1 at 2016-10-29 16:55:49 +0200
但是当我打电话时
App.cable.subscriptions.remove(App.subscription)
或
App.subscription.unsubscribe()
正在调用 CommunityChannel
中的方法 "unsubscribed",但电缆仍然存在,我仍然可以在我的函数中打印它 "print_socket"
如何手动关闭连接?
module ApplicationCable
class Connection < ActionCable::Connection::Base
identified_by :current_user
def connect
self.current_user = find_verified_user
end
protected
def find_verified_user
if current_user = User.find_by(id: cookies.signed[:user_id])
current_user
else
reject_unauthorized_connection
end
end
end
end
App.cable.subscriptions.remove(App.subscription)
会为您取消订阅 "CommunityChannel",但不会关闭您的连接,
如果你想断开连接,那么就这样做:
App.cable.disconnect()
我无法手动关闭套接字。 只有当我在浏览器中关闭一个标签时它才会退出。
Finished "/cable/" [WebSocket] for 127.0.0.1 at 2016-10-29 16:55:49 +0200
但是当我打电话时
App.cable.subscriptions.remove(App.subscription)
或
App.subscription.unsubscribe()
正在调用 CommunityChannel
中的方法 "unsubscribed",但电缆仍然存在,我仍然可以在我的函数中打印它 "print_socket"
如何手动关闭连接?
module ApplicationCable
class Connection < ActionCable::Connection::Base
identified_by :current_user
def connect
self.current_user = find_verified_user
end
protected
def find_verified_user
if current_user = User.find_by(id: cookies.signed[:user_id])
current_user
else
reject_unauthorized_connection
end
end
end
end
App.cable.subscriptions.remove(App.subscription)
会为您取消订阅 "CommunityChannel",但不会关闭您的连接,
如果你想断开连接,那么就这样做:
App.cable.disconnect()