Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cookies issue #583

Open
anatoly-abramov opened this issue Jun 22, 2023 · 0 comments
Open

Cookies issue #583

anatoly-abramov opened this issue Jun 22, 2023 · 0 comments

Comments

@anatoly-abramov
Copy link

anatoly-abramov commented Jun 22, 2023

Hello, i found issue with cookies. When using WebSocketModule, response returns Set-Cookie header with all request cookies joined into one cookie. NameValueCollection in WebSocketHandshakeResponse joins all the values under the same key via comma separator, which causes confusing result in response headers, like
image

This problem occurs only when Embedio built with WebSocketModule.
Perhaps, the problem is in line 26 in unexpected NameValueCollection.Add method behavior.
image
image
image

And WebSocketHandshakeResponse.cs, line 45 returns that merged cookie string.
image

Steps to reproduce the behavior:

  1. Run Embedio with WebSocketModule

A. (UWP) Set cookies for Microsoft.Web.WebView2.Core.CoreWebView2 via
CoreWebView2 .CoreWebView2.CookieManager.AddOrUpdateCookie(cookie);
B. (Android) Set cookies for Android.Webkit.WebView via
CookieManager.Instance.SetAcceptCookie(true);
CookieManager.Instance.SetAcceptThirdPartyCookies(webView, true);
CookieManager.Instance.SetCookie(cookie);

  1. Try to connect to the webocket
  2. Check response cookies via DevTools

Expected behavior should be:

Set-Cookie: en=culture
Set-Cookie: token=...

Desktop

  • Windows 10 Pro 22H2,
  • Browser Microsoft.Web.WebView2.Core.CoreWebView2
  • Version [Latest update]

Smartphone:

  • Device: Samsung SM-P613,
  • OS: Android 13
  • Browser Android.Webkit.WebView
  • Version [Latest update]

And additional question, for which purpose do we set cookies back to the client at WebSocketHandshakeResponse, line 43? Do we need that?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant