IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau Discussion :

Comment utiliser ignoreSslErrors


Sujet :

Réseau

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 5
    Par défaut Comment utiliser ignoreSslErrors
    Bonjour à tous,

    Je cherche comment se servir de la fonction ignoreSslErrors : le but de mon programme est de télécharger des fichiers en https sur un serveur où le certificat est auto-signé.

    Voici la partie concernée de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    const QNetworkRequest requete(url);
    QNetworkAccessManager *m = new QNetworkAccessManager;
    QNetworkReply *r = m->get(requete);
    Suivant ce que dit la doc ( http://qt.developpez.com/doc/4.6/qne...gnoreSslErrors ), j'ai ajouté à la suite de ce code la ligne suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    connect(r, SIGNAL(sslErrors(QList<QSslError>)), r, SLOT(ignoreSslErrors(QList<QSslError>)) );
    Malgré tout, je continue d'avoir l'erreur SSL qui bloque mon téléchargement.

    Une idée ?

  2. #2
    Membre éprouvé
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Par défaut
    Il me semble qu'il faut appeler ignoreSslErrors depuis l'intérieur du slot qui reçoit sslErrors. Cela fonctionne-t-il si tu essaies de faire ça en deux étapes plutôt que connecter directement les 2 méthodes?

    Sinon, pour ton problème de certificat auto signé, il me semble que charger le certificat en local est recommandé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    QList<QSslCertificate> cert = QSslCertificate::fromPath(QLatin1String("server-certificate.pem"));
    QSslError error(QSslError::SelfSignedCertificate, cert.at(0));
    QList<QSslError> expectedSslErrors;
    expectedSslErrors.append(error);
     
    QNetworkReply *reply = manager.get(QNetworkRequest(QUrl("https://server.tld/index.html")));
    reply->ignoreSslErrors(expectedSslErrors);
    Voir aussi : Le forum Qt, les cours et tutoriels Qt, et la FAQ Qt.

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/02/2009, 12h06
  2. Comment utiliser un cache ?
    Par TOM-Z dans le forum XMLRAD
    Réponses: 4
    Dernier message: 14/03/2003, 09h55
  3. comment utiliser actionscript ?
    Par webs dans le forum Flash
    Réponses: 3
    Dernier message: 09/02/2003, 23h11
  4. Comment utiliser OUT ?
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 3
    Dernier message: 20/07/2002, 09h35
  5. Réponses: 5
    Dernier message: 11/06/2002, 15h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo