QWebEngineView自带Cookie(网页内部js请求http默认含cookie头域) | 您所在的位置:网站首页 › indexmain › QWebEngineView自带Cookie(网页内部js请求http默认含cookie头域) |
m_htmlWidget1 = new QWebEngineView();
QWebEngineHttpRequest req;
QUrl url("http://abc.actest.yiran.com/assets/chats/dist/indexMain.html");
QUrl urlOrigin(http://abc.actest.yiran.com/");
//这个url设置非常重要,只有在该domain下的请求才会自带cookie
req.setUrl(url);
//req.setHeader("Cookie", m_cookieStr.toLocal8Bit());
QNetworkCookie cookieInfo("PASS_ID", token.toLocal8Bit());
//name=value
QWebEngineCookieStore *cookieStore = m_htmlWidget1->page()->profile()->cookieStore();
cookieStore->setCookie(cookieInfo, urlOrigin);
//此处添加urlorigin
m_htmlWidget1->page()->profile()->setPersistentCookiesPolicy(QWebEngineProfile::AllowPersistentCookies);
m_htmlWidget1->loadNewPage(req);
m_htmlWidget1->show();
备注: 当我们加载一个页面时,页面中的JS回自动发送http请求,默认是不带cookie,导致我们跟服务器交互失败,上面的设置,能让这些请求自带cookie. 资料绝无仅有,查了半天没完整解决方案,自己摸索了很久,大哭 |
CopyRight 2018-2019 实验室设备网 版权所有 |