Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2015-11-10 15:18:33

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

[Solved][Qt5] QNetworkAccessManager = problem

Czy mógłby mi ktoś wyjaśnić w jaki sposób w tym *!%@$ie można wyłączyć SSLSocket? Ponieważ non stop mi się wtrynia, że nie można połączyć się za pomocą SSL.

Kod:

QNetworkReply *replay;
QNetworkAccessManager *mgr = new QNetworkAccessManager();

mgr->setNetworkAccessible(QNetworkAccessManager::Accessible);
replay = mgr->get(QNetworkRequest(QUrl(url)));

MainWindow *form = new MainWindow();
form->ui->textBrowser->setText(replay->readAll());

plik *.pro

Kod:

QT       += core gui webkitwidgets xml network
DEFINES  += QT_NO_SSL

CONFIG -= no-openssl
...

Error

qt.network.ssl: QSslSocket: cannot resolve SSL_set_psk_client_callback
qt.network.ssl: QSslSocket: cannot resolve TLSv1_1_client_method
qt.network.ssl: QSslSocket: cannot resolve TLSv1_2_client_method
qt.network.ssl: QSslSocket: cannot resolve TLSv1_1_server_method
qt.network.ssl: QSslSocket: cannot resolve TLSv1_2_server_method
qt.network.ssl: QSslSocket: cannot resolve SSL_select_next_proto
qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
qt.network.ssl: QSslSocket: cannot resolve SSL_get0_next_proto_negotiated

Nie mogę znaleźć bata na tego (*!&@ja

Aha dodam, że kochana nokia wyrąbała QHttp i w wersji 5 niema :/

Ostatnio edytowany przez jezoo (2015-11-14 19:12:16)


LRU #480459

Offline

 

#2  2015-11-12 07:16:26

  diabolic - Użytkownik

diabolic
Użytkownik
Skąd: okolice Leżajska
Zarejestrowany: 2007-10-08

Re: [Solved][Qt5] QNetworkAccessManager = problem

Prawdopodobnie to powinno pomóc http://stackoverflow.com/questions/14277694/suppressing-ssl-errors. BTW Nokia już nie posiada Qt.


I am the one who chose my path

Offline

 

#3  2015-11-12 08:03:28

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: [Solved][Qt5] QNetworkAccessManager = problem

Ooo, o tym to nie wiedziałem :>

No idalej mam lipe...

Kod:

qWarning() << "Slot uruchomiony";
    QList<QSslError> sslError;

    QNetworkReply *reply;
    QNetworkAccessManager *mgr = new QNetworkAccessManager();

    qWarning()<<"Uruchamiam połączenie z serwerem";

    mgr->setNetworkAccessible(QNetworkAccessManager::Accessible);
    reply = mgr->get(QNetworkRequest(QUrl(url)));
    reply->ignoreSslErrors(sslError);

    QEventLoop loop;
        connect(reply, SIGNAL(finished(QNetworkReply *)), &loop, SLOT(quit()) );
        //connect(reply, SIGNAL(error(QNetworkReply::NetworkError)), &loop, SLOT(quit()));
    loop.exit();

    qWarning() << reply->errorString();
    qWarning() << "Wczytywanie odpowiedzi";
    QByteArray bts = reply->readAll();
    QString str(bts);
    delete reply;
    MainWindow *form = new MainWindow();

    qWarning() << str;

    form->ui->textEdit->setText(str);

tym razem reply zwraca "Unknown error" :|

Ostatnio edytowany przez jezoo (2015-11-12 10:24:35)


LRU #480459

Offline

 

#4  2015-11-14 19:11:57

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: [Solved][Qt5] QNetworkAccessManager = problem

Problem rozwiązałem w inny sposób. Wywaliłem "pomagiera" (czyt. QNetworkAccessManager) i użyłem QTcpSocket.

Wszystko działa jak należy.


LRU #480459

Offline

 

#5  2015-11-16 20:10:13

  diabolic - Użytkownik

diabolic
Użytkownik
Skąd: okolice Leżajska
Zarejestrowany: 2007-10-08

Re: [Solved][Qt5] QNetworkAccessManager = problem

Trochę inaczej to zrobiłeś z NAM niż tam pisało. Nawet w dokumentacji jest opisane że trzeba tą funkcję wywołać w slocie http://doc.qt.io/qt-5.5/qnetworkaccessmanager.html#sslErrors. Ale skoro zrobiłeś to na czystym sockecie i działa tak jak chcesz to w sumie nie ma tematu ;), a to tak informacyjnie ;).

Ostatnio edytowany przez diabolic (2015-11-16 20:11:16)


I am the one who chose my path

Offline

 

#6  2015-11-23 10:02:40

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: [Solved][Qt5] QNetworkAccessManager = problem

robiłem również i na slocie ale nie działało :)


LRU #480459

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)