使用cefsharp开发一些网页工具时,经常面对独立隔离cookie的问题,比如在工具上想登陆多个淘宝账号,多个拼多多后台号等,就会面临隔离cookie的问题,其实实现很简单,详细代码如下:
/// <summary>
/// 创建浏览器
/// </summary>
/// <param name="url">初始化浏览器的地址</param>
/// <param name="tempPath">浏览器缓存的目录</param>
/// <returns></returns>
private ChromiumWebBrowser CreateWeb(string url,string tempPath)
{
ChromiumWebBrowser web = new ChromiumWebBrowser(url);
RequestContextSettings rqs = new RequestContextSettings();
rqs.PersistSessionCookies = true;//这里设置可以缓存cookie状态,下次启动免登陆
rqs.PersistUserPreferences = true;//这里设置可以缓存cookie状态,下次启动免登陆
rqs.CachePath = Directory.GetCurrentDirectory() + @"\Cache\Temp\" + tempPath;//设置该浏览器缓存目录,根据自己需求设置,这里使用程序根目录下创建的
web.RequestContext = new RequestContext(rqs);
web.Dock = DockStyle.Fill;
return web;//
}
/// <summary>
/// 初始化浏览器,一般在FormLoad时使用该方法就行了
/// </summary>
private void InitWeb()
{
var web1 = CreateWeb("http://taobao.com", "Acount1");//淘宝账号1的缓存目录
this.tabPage1.Controls.Add(web1);
var web2 = CreateWeb("http://taobao.com", "Acount2");//淘宝账号1的缓存目录
this.tabPage2.Controls.Add(web1);
}
本文暂时没有评论,来添加一个吧(●'◡'●)