我正面临一个我不太懂的错误。
/pages/pages/about.html
QtCreator控制台日志:
qml:readyState = 2
qml:readyState = 3
QList :: at中的ASSERT失败:"索引超出范围",文件C:\ Qt \ 5.5 \ mingw492_32 \ include / QtCore / qlist.h,第510行
在Wireshark中,请求按预期进行,页面正确下载。我做错了什么?
编辑:
我正在尝试在C ++和QML中使用相同的networkaccessmanager。 我有一个Login类来建立与网站的连接。我需要使用相同的管理器在QML中发出其他请求。 我首先想到的问题是关于指针或我调用Login()的方式,但是使用Wireshark,登录请求和通过QML创建的请求具有相同的会话ID。我推断问题不是那个,但我可能错了。
的main.cpp
var http = new XMLHttpRequest();
var url = "http://..........";
http.open("GET", url, true);
http.onreadystatechange = function() {
console.log("readyState=" + http.readyState);
if (http.readyState == 4) {
if (http.status == 200) {
console.log("ok");
} else {
console.log("not ok");
}
}
}
http.send();
login.h
QQmlApplicationEngine engine;
.....
QNetworkAccessManager *networkmanager = new QNetworkAccessManager();
networkmanager = engine.networkAccessManager();
Login login(networkmanager);
login.cpp
.....
class Login : public QObject
{
Q_OBJECT
public:
explicit Login(QNetworkAccessManager *manager, QObject *parent = 0);
.....
private:
QNetworkAccessManager *m_manager;
.....
}