delphi – 如何清除嵌入式Chromium浏览器的缓存和cookie?
发布时间:2020-12-15 04:34:40 所属栏目:大数据 来源:网络整理
导读:我用TChromium创建了一个浏览器. TChromium是动态创建的. Facebook访问(登录) 在该过程结束时,该组件被销毁. 再次创建组件时会发生此问题 他继续上一次会议(登录). 我需要清理所有缓存和cookie. (强制注销) 在代码下面我通过以下方式创建组件: var Chromium
|
我用TChromium创建了一个浏览器.
TChromium是动态创建的. Facebook访问(登录) 在该过程结束时,该组件被销毁. 再次创建组件时会发生此问题 他继续上一次会议(登录). 我需要清理所有缓存和cookie. (强制注销) 在代码下面我通过以下方式创建组件: var
Chromium: TChromium;
begin
try
Chromium := TChromium.Create(nil);
Chromium.SetParentComponent(Form1);
Chromium.Align := alClient;
chromium.Browser.MainFrame.LoadUrl('www.facebook.com');
我摧毁它并释放这样的记忆: FreeAndNil(Chromium) 我该怎么办? 解决方法
DCEF1:
要删除DCEF1包装器中的cookie,可以使用ICefCookieManager管理器界面中的DeleteCookies函数.但是,我已经尝试使用以下代码删除所有cookie,但它总是对我失败: procedure TForm1.Button1Click(Sender: TObject);
var
CookieManager: ICefCookieManager;
begin
CookieManager := TCefCookieManagerRef.GetGlobalManager;
if not CookieManager.DeleteCookies('','') then
ShowMessage('DeleteCookies failed!');
end;
幸运的是,还有另一种选择,可以使用此cookie管理器删除cookie.访问所有这些并在visitor函数中将true指定给deleteCookie输出参数.小心获取cookie管理器,它是在你第一次导航时创建的(GetGlobalManager类函数不安全,因为意外结果没有正确处理),所以请确保在导航后使用此代码: procedure TForm1.Button1Click(Sender: TObject);
var
CookieManager: ICefCookieManager;
begin
CookieManager := TCefCookieManagerRef.GetGlobalManager;
CookieManager.VisitAllCookiesProc(
function(const name,value,domain,path: ustring; secure,httponly,hasExpires: Boolean; const creation,lastAccess,expires: TDateTime;
count,total: Integer; out deleteCookie: Boolean): Boolean
begin
deleteCookie := True;
ShowMessage('A cookie from domain ' + domain + ' will be unmercifully ' +
'deleted!');
end
);
end;
DCEF3: 在DCEF3包装器中,您可以使用以下内容.信用额度为Eric Santos: type
CefTask = class(TCefTaskOwn)
procedure Execute; override;
end;
procedure CefTask.Execute;
var
CookieManager: ICefCookieManager;
begin
CookieManager := TCefCookieManagerRef.Global;
CookieManager.DeleteCookies('','');
end;
procedure ClearCookies;
var
Task: CefTask;
begin
Task := CefTask.Create;
CefPostTask(TID_IO,Task);
end;
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
