Как я могу установить User Agent для дочерних окон с QTWebEngine?

Я создал свой собственный веб-браузер с QtWebEngine. Теперь я хотел бы установить User Agent с this->page()->profile()->setHttpUserAgent(USER_AGENT);, Это хорошо работает для основного вида.

Если я создам новый myWebEngineView внутри метода createWindow из myWebEngineView Пользовательский агент будет пользовательским агентом по умолчанию в QtWebEngine.

myWebEngineView это подкласс QWebEngineView,

Как я могу установить User Agent для всех видов?

0 ответов

Вы можете снова установить пользовательский агент во вновь созданном окне:

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).

Другие вопросы по тегам