如何在 QtWebEngine QML 应用程序中设置用户代理

Posted

技术标签:

【中文标题】如何在 QtWebEngine QML 应用程序中设置用户代理【英文标题】:How to set User Agent in QtWebEngine QML application 【发布时间】:2015-06-16 18:44:14 【问题描述】:

注意:我可以使用 QtWebView extension 在 QtWebKit QML 上做到这一点。这里我有兴趣使用QtWebEngine

我的简单测试应用程序

import QtQuick 2.1
import QtQuick.Controls 1.1
import QtWebEngine 1.0

ApplicationWindow 
    width: 800
    height: 600
    color: "lightgray"
    visible: true
    WebEngineView 
        id: webview
        url: "http://stackexchange.com/"
        anchors.fill: parent
    

如何传递不同的User Agent string?

【问题讨论】:

【参考方案1】:

我也对使用 QtWebEngine 感兴趣。我可以建议你使用 QtWebEngine 开发人员Trello。

您可以在 Todo for 5.5 中看到,这是currently under development,可能会在 5.5 中完成。

【讨论】:

确实很棒。谢谢你。【参考方案2】:

从 Qt 5.5 开始,您可以设置 WebEngineProfile.userAgent 属性。

【讨论】:

【参考方案3】:

//导入QtWebEngine 1.4

WebEngineView 
    id: webview
    url: "http://stackexchange.com/"
    anchors.fill: parent
    profile:  WebEngineProfile
        httpUserAgent: "Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (Khtml, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1"
    

【讨论】:

以上是关于如何在 QtWebEngine QML 应用程序中设置用户代理的主要内容,如果未能解决你的问题,请参考以下文章

QtWebengine Cookie SameSite=无警告

使用 QtWebEngine 退出时 QT 崩溃

在 Raspberry Pi 2 上运行简单的 QtWebEngine 应用程序,页面未显示

Qt5.9 WebEngine 概述

QtWebEngine 和 WebView 有啥区别? [复制]

如何在 python 和 QtWebEngine 中启用 allowGeolocationOnInsecureOrigins