如何在CefSharp中保存Cookies

15

我对 CefSharp 还很陌生。上周我用 C# 创建了我的第一个小程序。这是一个分屏程序,在其中一个屏幕中我加载了 Tweetdeck。它可以正常工作,但是 Tweetdeck 不会存储 cookies。每次我启动程序时,都必须重新登录。 有没有办法保存 cookies?

var browser1 = new CefSharp.WinForms.ChromiumWebBrowser("https://tweetdeck.twitter.com/")
        {
            Dock = DockStyle.Fill,
        };
splitContainer1.Panel1.Controls.Add(browser1);
2个回答

20

设置CefSettings.CachePath目录。这些设置会传递给Cef.Initialize()。


2
你能添加更多细节来说明如何使用它吗? - shyam_
1
@shyam_ 示例代码在这里:https://github.com/cefsharp/CefSharp/blob/5248174f894cba94c11bdf4aefe6b74383326d6c/CefSharp.Example/CefExample.cs#L51 - Czarek Tomczak

18

只是关于如何使用它的。

public partial class MainWindow : Window
    {
        public MainWindow()
        {
            CefSharp.CefSettings settings = new CefSharp.CefSettings();
            settings.CachePath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"\CEF"; 
           CefSharp.Cef.Initialize(settings);

            InitializeComponent();
            //webcontrol.BrowserSettings.ApplicationCache = CefSharp.CefState.Enabled;

        }
    }

1
最好为缓存目录使用单独的文件夹。 - amaitland
1
我建议修改一下,因为使用Chrome缓存文件夹最多也只是有问题而已。如果同时运行它们,你很可能会遇到问题,而且当Google更新到新版本时,如果CefSharp版本过旧,可能会出现不兼容的情况。 - amaitland
2
现在这个类位于不同的命名空间中:CefSharp.WinForms.CefSettings - andrew.fox

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接