CEF設置cookie


void CBrowserFrame::SetCookie()
{
    CefRefPtr<CefCookieManager> manager = CefCookieManager::GetGlobalManager();
    CefCookie cookie;
    CefString(&cookie.name).FromASCII("Venus_UserInfo");
    CefString(&cookie.value).FromASCII(g_meta.cookie);
    CefString(&cookie.domain).FromASCII("venus.sogou-inc.com");
    CefString(&cookie.path).FromASCII("/");
    cookie.has_expires = true;
    cookie.expires.year = 2200;
    cookie.expires.month = 4;
    cookie.expires.day_of_week = 5;
    cookie.expires.day_of_month = 11;
    CefPostTask(TID_IO, NewCefRunnableMethod(manager.get(), &CefCookieManager::SetCookie, CefString("http://venus.sogou-inc.com"), cookie));
}

 

就是這段代碼, 關鍵在於最后一句, 這里是開啟了一個新的IO thread, 設置cookie一定要在io線程里面做.為什么呢? 我目前不能答復你, 隨着我們對CEF內核的深入, 相信會水落石出.

使用情景, 比如, 想要直接登入一個網站, 可以通過設置cookie實現.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM