6

我在 WPF 控件中使用 WebView2 来托管新的边缘。

在我的代码中,我想将 cookie 和浏览器特定数据缓存到缓存目录。创建 CoreWebView2Environment 时,应在 CoreWebView2EnvironmentOptions 中设置缓存位置。

我们有什么办法可以做到这一点?提前致谢。

4

2 回答 2

9

我使用 WebView2 制作了一个 WPF 应用程序,它将缓存目录设置为用户 appdata 文件夹。下面是我的应用程序中的代码片段。

var webView2Environment = await CoreWebView2Environment.CreateAsync(null, _cacheFolderPath);
await kioskBrowser.EnsureCoreWebView2Async(webView2Environment);

kioskBrowser.Source = new Uri(url);

您可以在此处找到其余代码 KioskBrowser (GitHub)

于 2020-12-07T20:40:11.060 回答
8

您可以在CoreWebView2Environment.CreateAsync方法中设置用户数据文件夹。它的第二个参数和其他参数可能为空。

然后,您可以通过调用WebView2.EnsureCoreWebView2Async 方法让 WPF WebView 使用您的 CoreWebView2Environment 创建其 CoreWebView2 。

但是,您必须在设置 WebView2.Source 属性之前调用 EnsureCoreWebView2Async,因为设置该属性会隐式导致初始化以默认的 CoreWebView2Environment 开始。

您可以在WebView2 文档摘要部分阅读有关 WPF WebView2 控件初始化的更多信息。

于 2020-06-19T23:03:03.317 回答