Ответ C # SignalR GetHttpContext / HttpContext не существует - PullRequest
0 голосов
/ 08 мая 2018

Возникла проблема с обновлением приложения asp.net для использования SignalR с включенным протоколом WebSocket. Ранее, только с помощью SignalR, я мог устанавливать и добавлять файлы cookie ответов до того, как был включен протокол websocket. Теперь я заметил, что при отладке с помощью HttpResponse из HttpContext и HttpResponseBase из GetHttpContext я либо получаю

Ответ недоступен в этом контексте

или

сгенерировал исключение типа System.Web.HttpException

 Context.Request.GetHttpContext().Response

 HttpContext.Current.Response.Cookies

Забавно, что запрос контекста все еще существует и не доставляет мне никаких проблем. Также это происходит в классах SignalR HUB. Любая помощь будет оценена.

1 Ответ

0 голосов
/ 09 мая 2018

Причина в том, что базовая технология SignalR отличается от MVC - нет возможности устанавливать cookie-файлы (cookie-файлы устанавливаются в ответе HTTP, но при использовании веб-сокетов такого нет).

Итак, в принципе, вы не можете этого сделать. Однако вы можете прочитать файлы cookie (файлы cookie, когда соединение с веб-сокетом было инициализировано в любом случае ...), используя контекст концентратора.

...