使用cef的SetCookie方法,我希望以这样的方式设置cookie,即每次cef向浏览器发出请求时,都会设置该请求url的cookie并随请求一起发送。当我设置cookie时,我会得到true,但是当我记录请求标头我无法看到我设置的 cookie。使用 SetHeaderByName 方法可以实现这一点,但我希望使用 SetCookie。我想知道哪个是调用 SetCookie 方法的最佳 cef 回调函数以及如何验证如果在不使用 VistAllCookie 和 VisitUrlCookie 的情况下设置 cookie,则正确无误
CefRefPtr<CefCookieManager> manager = CefCookieManager::GetGlobalManager(nullptr);
CefCookie cookie;
CefString(&cookie.name).FromString("name");
CefString(&cookie.value).FromString("value");
LOG(WARNING)<<"------is cookie set "<<manager->SetCookie(CefString(url),cookie,nullptr);
现在我正在创建浏览器窗口后设置cookie。 我运行应用程序的网址:http://localhost:9000/#https://www.google.com。 如果我在创建 cookie 时缺少一些参数,有人可以为我提供正确的虚拟参数来使用。
要验证是否设置了 cookie,请将回调传递给 setCookie(第三个参数)。
创建CefSetCookieCallback的子类
class MyCookieCallback: public CefSetCookieCallback {
void OnComplete(bool success) {
//success will tell if you cookie was set or not.
}
}
也尝试添加 cookie.path 。