When the server asks for a re-handshake, the client should clear its state, including the subscribed channels.
We added a listener for the handshake event, and in OnMessage, we are calling GetChannel('/topic', lastReplyId).Subscribe(). In the event of a re-handshake, GetChannelreturns an existing channel from the Channels dictionary with the previously passed replyId and ignores the replyId in the current #call.
After the handshake, it should clear all non-meta channels from the Channels dictionary.
When the server asks for a re-handshake, the client should clear its state, including the subscribed channels.
We added a listener for the handshake event, and in
OnMessage
, we are callingGetChannel('/topic', lastReplyId).Subscribe()
. In the event of a re-handshake,GetChannel
returns an existing channel from the Channels dictionary with the previously passed replyId and ignores the replyId in the current #call.After the handshake, it should clear all non-meta channels from the Channels dictionary.
This bug causes this issue:
https://github.com/kdcllc/CometD.NetCore/issues/27