Maison > interface Web > js tutoriel > Comment surmonter les problèmes de chargement de page HTTPS avec PhantomJS/CasperJS ?

Comment surmonter les problèmes de chargement de page HTTPS avec PhantomJS/CasperJS ?

Barbara Streisand
Libérer: 2024-10-27 02:09:02
original
609 Les gens l'ont consulté

 How to Overcome HTTPS Page Load Issues with PhantomJS/CasperJS?

PhantomJS/CasperJS a du mal avec le chargement de la page HTTPS

Lors de la tentative de chargement d'une page HTTPS sécurisée à l'aide de PhantomJS/CasperJS, les utilisateurs peuvent rencontrer l'erreur "PhantomJS n'a pas réussi à ouvrir la page status=fail." Résoudre ce problème nécessite une stratégie spécifique pour lutter contre les vulnérabilités SSLv3.

Analyse des erreurs

Les découvertes récentes de la vulnérabilité POODLE SSLv3 ont incité les propriétaires de sites Web à désactiver la prise en charge SSLv3 sur leurs sites. . Cependant, étant donné que les versions de PhantomJS antérieures à 1.9.8 utilisent SSLv3 par défaut, l'accès à ces sites Web peut entraîner des échecs de chargement.

Solution

Pour résoudre ce problème, spécifiez le utilisation du protocole TLSv1 lors de l'appel de PhantomJS :

casperjs --ssl-protocol=tlsv1 yourScript.js
Copier après la connexion

Pour une solution plus complète pouvant prendre en charge les futures versions de PhantomJS avec différents protocoles SSL, utilisez ce qui suit :

casperjs --ssl-protocol=any yourScript.js
Copier après la connexion

Alternative Approche

Vous pouvez également mettre à jour vers PhantomJS 1.9.8 ou une version ultérieure pour éviter les problèmes de vulnérabilité SSLv3. Cependant, cela peut introduire un bug différent qui affecte CasperJS.

Vérification

Pour vérifier si SSLv3 est le problème sous-jacent, implémentez un gestionnaire d'événements resource.error dans votre CasperJS. script :

casper.on("resource.error", function(resourceError){
    console.log('Unable to load resource (#' + resourceError.id + 'URL:' + resourceError.url + ')');
    console.log('Error code: ' + resourceError.errorCode + '. Description: ' + resourceError.errorString);
});
Copier après la connexion

Si le message d'erreur affiché inclut « Code d'erreur : 6. Description : échec de la négociation SSL », il s'agit probablement d'un problème lié à SSLv3.

Conseil supplémentaire

Pour les erreurs liées au certificat, envisagez d'utiliser l'option de ligne de commande --ignore-ssl-errors=true.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal