7

SSL モードで Web ページから返されたヘッダーを読み取れるようにしたいと考えています。Qt アプリは、収集している SSL モードであるため、Web ページにアクセスできませんか? この接続を使用して、SSL での通常の webview ブラウジングがアプリで可能です。

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

これにより、webview の 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;
  }

このメソッドが必要なのは、アプリがwebview->load(QURL(appUrl )). QNetworkAccessManager を使用して SSL エラーを抑制/処理する方法がわかりませんか?

4

1 に答える 1

8

QNAMオブジェクト信号sslErrors(QNetworkReply *, QList<QSslError>)を設定したスロットに接続する必要がありQNetworkReply::ignoreSslErrors()ます。これにより、QNAMは実行を継続できます。 その上のQtドキュメント

于 2013-01-11T12:06:51.517 に答える