问题描述
在此处使用工作示例在 PowerShell 中启动 WebView2 实例:WebView2 in PowerShell Winform GUI
我注意到它在会话之间很好地维护了 cookie,就像“普通”Edge 一样。然而,在某些情况下,手动获取和/或设置 cookie 可能很有用。我正在考虑的一个特定场景是使用 WebView2 会话 cookie 创建 WebDAV 连接。
我尝试像这样创建一个 CookieManager:
$cookieManager = [Microsoft.Web.WebView2.Core.CoreWebView2CookieManager]
但是 $cookieManager
然后不公开任何设置/获取 cookie 的方法。
解决方法
您应该使用 CoreWebView2 的 CookieManager 属性来获取对应 CoreWebView2 的 cookie 管理器。它将影响共享同一用户数据文件夹的所有 CoreWebView2。
$coreWebView2Initialized = {
# CookieManager only available after the CoreWebView2 property has been initialized.
$cookieManager = $webview.CoreWebView2.CookieManager;
$cookie = $cookieManager.CreateCookie("name","value","example.com","/");
$cookieManager.AddOrUpdateCookie($cookie);
}
$webview.add_CoreWebView2InitializationCompleted($coreWebView2Initialized);