如何使用 CoreWebView2CookieManager 在 WebView2 控件上设置 cookie
How do I set the cookie on the WebView2 control using the CoreWebView2CookieManager
提前致谢。
我正在尝试使用 CoreWebView2CookieManager(来自 WebView2 最新 SDK 1.0.705.50 的 CookieManagement API)在基于 WPF 的 WebView2 浏览器控件上设置 cookie,但浏览器上未设置 cookie。
这是我在 WPF 应用程序中的一段代码:
private void ButtonNavigateToLocal(object sender, RoutedEventArgs e)
{
string uri = @"http://www.dnndev.me/";
var cookie = _webView.CoreWebView2.CookieManager.CreateCookie("TestCookie", "XJKDKD", ".me", null);
cookie.IsHttpOnly = true;
cookie.IsSecure = true;
_webView.CoreWebView2.CookieManager.AddOrUpdateCookie(cookie);
_webView.CoreWebView2.Navigate(uri);
}
只是想知道我是否遗漏了什么?我还需要使用 WebResourceRequested 事件来设置 cookie 吗?任何线索或示例将不胜感激。
问题是您将 cookie 域设置为顶级域 .me
。这是不合法的,出于安全原因,浏览器不会发送它。
想象一下,如果您将其设置为 .com
,那么它会将 cookie 发送到半个世界。所以这是被禁止的。
而是将其设置为 .dnndev.me
- 然后它将发送到您的域。
您还设置了:cookie.IsSecure = true;
- 那么它只会被发送到 https
个请求。将其设置为 false
以包含 http
个请求。
同时将 path
设置为 /
- 然后它将发送到您服务器上的所有路径。
提前致谢。
我正在尝试使用 CoreWebView2CookieManager(来自 WebView2 最新 SDK 1.0.705.50 的 CookieManagement API)在基于 WPF 的 WebView2 浏览器控件上设置 cookie,但浏览器上未设置 cookie。
这是我在 WPF 应用程序中的一段代码:
private void ButtonNavigateToLocal(object sender, RoutedEventArgs e)
{
string uri = @"http://www.dnndev.me/";
var cookie = _webView.CoreWebView2.CookieManager.CreateCookie("TestCookie", "XJKDKD", ".me", null);
cookie.IsHttpOnly = true;
cookie.IsSecure = true;
_webView.CoreWebView2.CookieManager.AddOrUpdateCookie(cookie);
_webView.CoreWebView2.Navigate(uri);
}
只是想知道我是否遗漏了什么?我还需要使用 WebResourceRequested 事件来设置 cookie 吗?任何线索或示例将不胜感激。
问题是您将 cookie 域设置为顶级域 .me
。这是不合法的,出于安全原因,浏览器不会发送它。
想象一下,如果您将其设置为 .com
,那么它会将 cookie 发送到半个世界。所以这是被禁止的。
而是将其设置为 .dnndev.me
- 然后它将发送到您的域。
您还设置了:cookie.IsSecure = true;
- 那么它只会被发送到 https
个请求。将其设置为 false
以包含 http
个请求。
同时将 path
设置为 /
- 然后它将发送到您服务器上的所有路径。