QWebView / Qt WebKit не открывает некоторые страницы SSL; перенаправления не разрешены?

Чистая установка Qt SDK 1.1.4 в Windows 7 с Visual C ++ 2008 SP1; Я использую Qt Creator. Почему этот код не загружает некоторые веб-страницы?

#include <QtGui/QApplication>
#include <QtWebKit/QWebView>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QWebView b;
    b.load(QUrl("https://gmail.com")); // doesn't work
    //b.load(QUrl("https://accounts.google.com")); // works
    //b.load(QUrl("https://google.com")); // doesn't work
    //b.load(QUrl("https://www.google.com")); // works
    b.show();

    return a.exec();
}

Почему одни URL-адреса не работают, а другие работают?

Я думаю, что google.com / www.google.com особенно показателен; google.com обычно перенаправляет на www.google.com. А gmail.com перенаправляет на accounts.google.com. WebKit не позволяет перенаправлять защищенные страницы? Если да, то как это исправить?

Кстати, Qt SDK 1.1.4, похоже, включает OpenSSL; Я заметил его присутствие в C: \ QtSDK \ Desktop \ Qt \ 4.7.4 \ msvc2008 \ bin \ ssleay32.dll. Также обратите внимание, что некоторые страницы работают, но не другие.

РЕДАКТИРОВАТЬ: Еще два URL-адреса:

b.load(QUrl("https://support.motionview3d.com/help/_media/images/directory.png")); // doesn't work
b.load(QUrl("https://mail.google.com")); // works

Опять же, оба они отлично работают в других веб-браузерах.

12
задан James Johnston 2 December 2011 в 21:08
поделиться