SignalR doesn't use Session on server

倾然丶 夕夏残阳落幕 提交于 2019-11-27 08:49:46
Damian Edwards

SignalR connections (including the connection underlying all Hub operations for a client) do not support Session state. You could enable it if you wanted to but we'd strongly recommend against it as session state access serializes requests for a given client, meaning you won't really get the benefit from SignalR duplex messaging anymore, as one request will block the other e.g. in the long polling transport, the receiving connection will block any attempt to send.

you can simply maintain your own session, for example, use in memory cache, http is stateless,so server need session to maintain clients,but web socket is keep-alive connection, server keeps connected with clients, by default no need such things like HttpContext Session.

I resolve the same problem with hidden field as follows:

  1. Added ASP Hiddenfield on the aspx page.
  2. assigned the session value on page load (in my case on button client event)
  3. sent the value to the SignalR Hub using $("FieldID").val()
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!