C# CefSharp speichert Cookies nicht?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Ich habe es gerade einmal mit der aktuellen Version 93.1.111 getestet. Ich habe dafür eine beliebige Seite mit Cookie Popup benutzt und für die Cache-Daten einen neuen Ordner angelegt.

var applicationPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
var cachePath = Path.Combine(applicationPath, "cache");

if (!Directory.Exists(cachePath))
{
  Directory.CreateDirectory(cachePath);
}

CefSharp.Cef.Initialize(new CefSettings
{
  CachePath = cachePath,
  PersistSessionCookies = true
});

// create browser control and add to form ...

Dein Problem konnte ich damit reproduzieren, obwohl im cache-Ordner offensichtlich die Cookie-Daten abgelegt wurden.

Ich habe dem Form daraufhin noch einen Event Handler zugeordnet, der anspringt, sobald es sich schließt. In diesem habe ich die Shutdown-Methode für CefSharp aufgerufen, was du vermutlich nicht tust. Dieser Aufruf bewirkt das Speichern der Cache-Daten vor Beendigung des Browserprozesses.

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
  CefSharp.Cef.Shutdown();
}

Bei einem Neustart der Anwendung erscheint der Cookie Popup daraufhin nicht mehr.