HTTP POST 中缺少内容类型。 QT使用Webview
content-type missing in HTTP POST. QT using Webview
你好,这是我的第一个 post,对不起,我有点新手。
我正在尝试制作一个有 Trayicon 的应用程序,点击它会打开一个无边界的 Qwidget
,其中有一个网页已打开(一个 IP 地址)。我已经编写了这个程序,但后来我不得不重做,因为我切换到 64x 机器并且它是针对 32x 机器的。此外,我将 QT 从 4.8 更新到 5.5,将 q creator 从 2.5 更新到 3.5。
在我的旧 PC 上的旧版本中,它运行良好,我也有我的应用程序的 exe 文件,我只是想对其进行一些调整。
现在,每当我尝试通过 QWebview
.
连接到网页时,我都会收到此错误
错误:
content-type missing in HTTP POST, defaulting to application/x-www-form-urlencoded. Use QNetworkRequest::setHeader() to fix this problem.
content-type missing in HTTP POST, defaulting to application/x-www-form-urlencoded. Use QNetworkRequest::setHeader() to fix this problem.
jit\JITStubs.cpp(2597) : JSC::cti_op_get_by_val
代码如下:
QWidget *wind = new QWidget;
view = new QWebView(wind);
view->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
view->load(urlMaxi);
if(goFullscreen)
{
QDesktopWidget desktop;
QRect mainScreenSize = desktop.availableGeometry(desktop.primaryScreen());
wind->setWindowIcon(QIcon(":/icons/myico.png"));
view->setFixedHeight(mainScreenSize.height());
view->setFixedWidth(mainScreenSize.width());
wind->showFullScreen();
view->showFullScreen();
}
else
{
wind->setWindowTitle("Room control");
wind->setWindowIcon(QIcon(":/icons/myico.png"));
wind->setFixedHeight(heightMaxi);
wind->setFixedWidth(widthMaxi);
view->setFixedHeight(heightMaxi);
view->setFixedWidth(widthMaxi);
wind->show();
view->showMaximized();
}
connect(view,SIGNAL(loadFinished(bool)),this,SLOT(CheckPage()));
这是我想连接到网页的第二部分,它非常相似。
switch(reason)
case QSystemTrayIcon::Trigger:
{
QWidget *wind = new QWidget;
view = new QWebView(wind);
view->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
wind->setWindowFlags(Qt::CustomizeWindowHint);
view->load(urlMini);
wind->setFixedHeight(heightMini);
wind->setFixedWidth(widthMini);
view->setFixedHeight(heightMini);
view->setFixedWidth(widthMini);
wind->move(QCursor::pos().x()-widthMini,QCursor::pos().y()-heightMini-30);
QIcon icon(":/icons/myico.png");
wind->setWindowIcon(icon);
wind->show();
view->show();
view->setFocus();
view->activateWindow();
open1=true;
connect(view,SIGNAL(loadFinished(bool)),this,SLOT(CheckPage()));
}
知道如何解决吗?
所以我终于解决了!
使用 QWebEngineView
而不是 QWebView
仅此而已,效果很好。
你好,这是我的第一个 post,对不起,我有点新手。
我正在尝试制作一个有 Trayicon 的应用程序,点击它会打开一个无边界的 Qwidget
,其中有一个网页已打开(一个 IP 地址)。我已经编写了这个程序,但后来我不得不重做,因为我切换到 64x 机器并且它是针对 32x 机器的。此外,我将 QT 从 4.8 更新到 5.5,将 q creator 从 2.5 更新到 3.5。
在我的旧 PC 上的旧版本中,它运行良好,我也有我的应用程序的 exe 文件,我只是想对其进行一些调整。
现在,每当我尝试通过 QWebview
.
错误:
content-type missing in HTTP POST, defaulting to application/x-www-form-urlencoded. Use QNetworkRequest::setHeader() to fix this problem.
content-type missing in HTTP POST, defaulting to application/x-www-form-urlencoded. Use QNetworkRequest::setHeader() to fix this problem.
jit\JITStubs.cpp(2597) : JSC::cti_op_get_by_val
代码如下:
QWidget *wind = new QWidget;
view = new QWebView(wind);
view->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
view->load(urlMaxi);
if(goFullscreen)
{
QDesktopWidget desktop;
QRect mainScreenSize = desktop.availableGeometry(desktop.primaryScreen());
wind->setWindowIcon(QIcon(":/icons/myico.png"));
view->setFixedHeight(mainScreenSize.height());
view->setFixedWidth(mainScreenSize.width());
wind->showFullScreen();
view->showFullScreen();
}
else
{
wind->setWindowTitle("Room control");
wind->setWindowIcon(QIcon(":/icons/myico.png"));
wind->setFixedHeight(heightMaxi);
wind->setFixedWidth(widthMaxi);
view->setFixedHeight(heightMaxi);
view->setFixedWidth(widthMaxi);
wind->show();
view->showMaximized();
}
connect(view,SIGNAL(loadFinished(bool)),this,SLOT(CheckPage()));
这是我想连接到网页的第二部分,它非常相似。
switch(reason)
case QSystemTrayIcon::Trigger:
{
QWidget *wind = new QWidget;
view = new QWebView(wind);
view->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
wind->setWindowFlags(Qt::CustomizeWindowHint);
view->load(urlMini);
wind->setFixedHeight(heightMini);
wind->setFixedWidth(widthMini);
view->setFixedHeight(heightMini);
view->setFixedWidth(widthMini);
wind->move(QCursor::pos().x()-widthMini,QCursor::pos().y()-heightMini-30);
QIcon icon(":/icons/myico.png");
wind->setWindowIcon(icon);
wind->show();
view->show();
view->setFocus();
view->activateWindow();
open1=true;
connect(view,SIGNAL(loadFinished(bool)),this,SLOT(CheckPage()));
}
知道如何解决吗?
所以我终于解决了!
使用 QWebEngineView
而不是 QWebView
仅此而已,效果很好。