ich einfach versuche, eine GET-Anforderung mit HTTP-URL zu senden, und ich bin diese zwei SSL-Fehler bekommen:QT HTTP GET-Request SSL-Fehler
> qt.network.ssl: QSslSocket: cannot call unresolved function d2i_DHparams
> qt.network.ssl: QSslSocket: cannot call unresolved function DH_free
ich Windows 10 mit QtCreator (QT v5.8) bin mit und ich bin mir bewusst, dass die SSL-Bibliotheken standardmäßig nicht von QT importiert werden. Ich sende jedoch eine HTTP-Anfrage und nicht HTTPS, also warum bekomme ich SSL-Fehler?
Hier ist der Code-Schnipsel, die einen Fehler erzeugt:
void MainWindow::sendGetRequest(QString& url)
{
QNetworkAccessManager networkManager;
QNetworkRequest request;
QUrl httpRequest(url);
request.setUrl(httpRequest);
currentReply = networkManager.get(request);
ui->label_2->setText("Request Sent...");
connect(&networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(onGetRequestResult(QNetworkReply*)));
}
void MainWindow::onGetRequestResult(QNetworkReply * reply)
{
if (reply->error() != QNetworkReply::NoError) {
ui->label_2->setText("Get Request Error!");
return;
}
QString data = (QString) reply->readAll();
qDebug() << data;
}
Gleich nach dem Label Änderungen Request Sent...
die Fehler und den Schlitz geworfen werden onGetRequestResult()
nie aufgerufen.
Auch habe ich die zwei SSL-Binärdateien heruntergeladen, aber das ändert nichts und gibt es eine Möglichkeit, SSL für GET-Anfrage zu deaktivieren, da ich es nicht verwenden muss.
Danke!
Bearbeiten Sie Ihre Frage, indem Sie Ihren vorheriger Kommentar – eyllanesc
Es gibt wahrscheinlich eine Umleitung zu https in der Antwort der HTTP-Anfrage und der HTTP-Stack von Qt folgt ihm und versucht, die Website über https zu erreichen, wie vom Server bestellt. –
Angenommen, die Antwort läuft über SSL, aber wie behebe ich diese Fehler? Wenn ich 'curl -X Get" url "verwende, funktioniert es gut. Allerdings habe ich nicht das Privileg, "curl" unter Windows 10 zu verwenden. –