Как загрузить URL-адрес самосертифицированного сервера https nodejs внутри QWebView
- Запуск локального сервера nodejs https с самозаверенным ключом для тестирования.
- Загрузите https://localhost:8888/index.html внутри QWebView приложения QT.
QWebView не показывает контент.
1 ответ
Спасибо гокменам.
Следующий код игнорирует ошибки ssl. Мы можем использовать этот код только для тестирования.
https://gist.github.com/gokmen/2558692
App::App(QWidget *parent) :
QWidget(parent),
ui(new Ui::App)
{
ui->setupUi(this);
QSslConfiguration sslCfg = QSslConfiguration::defaultConfiguration();
QList ca_list = sslCfg.caCertificates();
QList ca_new = QSslCertificate::fromData("CaCertificates");
ca_list += ca_new;
sslCfg.setCaCertificates(ca_list);
sslCfg.setProtocol(QSsl::AnyProtocol);
QSslConfiguration::setDefaultConfiguration(sslCfg);
connect(ui->webView->page()->networkAccessManager(),
SIGNAL(sslErrors(QNetworkReply*, const QList & )),
this,
SLOT(sslErrorHandler(QNetworkReply*, const QList & )));
}
void App::sslErrorHandler(QNetworkReply* qnr, const QList & errlist)
{
#if DEBUG_ENABLED
qDebug() ignoreSslErrors();
}