web-dev-qa-db-fra.com

Comment ignorer la validation du certificat SSL dans les demandes de nœud?

J'ai besoin de désactiver la validation SSL de peer pour certaines de mes demandes https à l'aide de nœud.js en ce moment, j'utilise node-fetch Paquet qui n'a pas cette option, autant que je sache.

Cela devrait être quelque chose comme CURL'S CURLOPT_SSL_VERIFYPEER => false, CURLOPT_SSL_VERIFYHOST => false

Un paquet de réseautage permet-il de le faire? Y a-t-il un moyen de sauter la validation SSL dans Axios peut-être?

7
Dmitry Samoylov

Axios ne traite pas de cette situation jusqu'à présent - vous pouvez essayer:

process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';

mais c'est une très mauvaise idée car elle désactive SSL sur tout le serveur de nœuds.

ou vous pouvez configurer Axios pour utiliser un agent personnalisé et définir rejectUnauthorized sur false pour cet agent comme mentionné ici

exemple:

// At instance level
const instance = axios.create({
  httpsAgent: new https.Agent({  
    rejectUnauthorized: false
  })
});

instance.get('https://something.com/foo');

// At request level
 const agent = new https.Agent({  
 rejectUnauthorized: false
});

axios.get('https://something.com/foo', { httpsAgent: agent });
8
iLuvLogix