4

How one can read multivalued cookie in SignalR Hub?

For example: I have a cookie stored as-

var myCookie = new NameValueCollection();
myCookie.Add("IdOne", "Value1");
myCookie.Add("IdTwo", "Value2");

var webDummyCookie = new CookieHeaderValue("dummyCookie", myCookie);
response.Headers.AddCookies(new CookieHeaderValue[] { webDummyCookie });

How can I get the values for IdOne and IdTwo separately?

All what I can do with SignalR is:

Cookie cookie; //Microsoft.AspNet.SignalR.Cookie
var cookies = Context.Request.Cookies;

if (cookies.TryGetValue(dummyCookie, out cookie) && cookie.Value != null)
{
    var receivedCookie = cookie.Value; //Here is the problem, as I can't do .Values[<key>]
}
Nimantha
  • 5,793
  • 5
  • 23
  • 56
Flair
  • 2,809
  • 5
  • 18
  • 22

1 Answers1

4
var httpContext = Context.Request.GetHttpContext();
var dummyCookie= httpContext.Request.Cookies["dummyCookie"];

if(dummyCookie != null)
{
   var receivedCookie = dummyCookie["IdOne"]; // result
}

I use SignalR 2.2.1.0

Nimantha
  • 5,793
  • 5
  • 23
  • 56
Mahedi Sabuj
  • 2,754
  • 3
  • 13
  • 25
  • 2
    Updated for later versions of SingnalR: `var cookie = Context.Features.Get().HttpContext.Request.Cookies["dummyCookie"];` – mdonatas Nov 11 '19 at 11:52