我用QtWebEngine创建了自己的Web浏览器。现在我想用this->page()->profile()->setHttpUserAgent(USER_AGENT);
.这适用于主视图。
如果我在方法createWindow
myWebEngineView
创建一个新myWebEngineView
,则用户代理将是QtWebEngine的默认用户代理。
myWebEngineView
是QWebEngineView
的一个子类。
如何为所有视图设置用户代理?
您可以在新创建的窗口中再次设置用户代理:
QWebEngineView* WebEngineView::createWindow( QWebEnginePage::WebWindowType type ) {
QWebEngineView* view = createView(); // your function to create a new tab or sth like this
view->page()->profile()->setHttpUserAgent( "" );
view->page()->profile()->setHttpUserAgent( "Mozilla/5.0( YOUR USER AGENT )" );
return view;
}
用户代理需要设置两次,否则不会传输到页面,另请参阅 ProfileAdapter::setHttpUserAgent(const QString &userAgent)。