Подавление ошибок SSL

Я хочу иметь возможность читать заголовки, отправленные обратно с веб-страницы в режиме SSL. Однако мое приложение Qt не может получить доступ к веб-странице, потому что она находится в режиме SSL, который я собираю? Нормальный просмотр веб-страниц в SSL возможен в моем приложении с помощью этого подключения:

connect(view->page()->networkAccessManager(), SIGNAL(sslErrors(QNetworkReply*, const QList<QSslError> & )),
this, SLOT(onSslErrors(QNetworkReply*, const QList<QSslError> & )));

Это подавляет ошибки SSL в веб-просмотре, но у меня есть отдельная функция, которая получает заголовки, используя этот метод:

//Send a request to validate URL
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
QNetworkRequest request;
request.setUrl(QUrl(text));
request.setRawHeader("User-Agent", "MyApp1.0");
request.setHeader(QNetworkRequest::ContentTypeHeader,"application/x-www-form-urlencoded");
QNetworkReply *reply = manager->get(request);
QEventLoop loop;
connect(reply, SIGNAL(finished()), &loop, SLOT(quit()));
loop.exec();

qDebug() << "QLoop: " << reply->rawHeader("My-Application");
if(reply->rawHeader("My-Application") == "1"){
appUrl = text;
}

Мне нужен этот метод, потому что я установил файл конфигурации с URL нашего веб-приложения, прежде чем приложение подключится к нему, используя webview->load(QURL(appUrl )), Просто не знаете, как подавлять / обрабатывать ошибки SSL с помощью QNetworkAccessManager?

5

Решение

Вам необходимо подключить сигнал объектов QNAM sslErrors(QNetworkReply *, QList<QSslError>) в слот, где вы установите QNetworkReply::ignoreSslErrors() и это позволит QNAM продолжать работать. Qt Docs на это.

7

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]