단순히 HTTP URL을 사용하여 GET 요청을 보내려고 그리고 난이 두 SSL 오류 점점 오전 :QT HTTP 가져 오기 요청 SSL 오류
> qt.network.ssl: QSslSocket: cannot call unresolved function d2i_DHparams
> qt.network.ssl: QSslSocket: cannot call unresolved function DH_free
내가 QTCreator와 윈도우 10을 사용하고을 (QT v5.8) , SSL 라이브러리가 기본적으로 QT에 의해 가져 오기되지 않는다는 것을 알고 있습니다. 그러나 HTTP 요청이 아닌 HTTPS를 보내려고합니다. 그렇다면 왜 SSL 오류가 발생합니까?
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;
}
가 오른쪽 오류가 발생하는 Request Sent...
에 라벨 변경 및 슬롯 onGetRequestResult()
후
또한 두 SSL 바이너리를 다운로드했지만 변경되지 않으며 사용하지 않아도 GET 요청에 대해 SSL을 사용하지 않도록 설정할 수있는 방법이 있습니다.
감사합니다.
편집 귀하의 질문에 당신의 이전 의견. – eyllanesc
아마도 HTTP 요청의 응답에서 https 로의 리다이렉트가있을 것이고, Qt의 HTTP 스택은 그 요청을 따르고 서버가 요청한대로 https로 사이트에 접근하려고 시도 할 것입니다. –
응답이 SSL을 통과한다고 가정하되 여전히 어떻게 이러한 오류를 수정합니까? 'curl -X Get "url"을 사용하면 잘 동작합니다. 그러나 Windows 10에서'curl '을 사용할 권한이 없습니다. –