SSLモードでウェブページから送り返されたヘッダを読み取れるようにします。私のQtアプリはSSLモードになっているのでWebページにアクセスできません。 SSLでの通常のWebViewのブラウジングは、この接続を使用して私のアプリで可能です:SSLエラーを抑制する
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))
を使ってアプリケーションがそれに接続する前に、webapps URLでconfigファイルを設定しているので、この方法が必要です。 QNetworkAccessManagerを使用してSSLエラーを抑制/処理する方法がわからないのですか?
お返事ありがとうございました。私は 'reply-> ignoreSslErrors();'を途中で笑ってしまい、うまく動作しませんでしたので、私はあなたのメソッドに行くでしょう:) – Kal
あなたの素早い応答のために感謝しました@Nicholasスミス – Kal
私が最初に試したのは、シグナルが放射されていることを完全に無視し、QNAMを作成した場所の 'reply-> ignoreSslErrors()'です。簡単な間違い! –