Fehler: Das erste Zertifikat in Nodejs konnte nicht überprüft werden
Ich versuche, eine Datei zum herunterladen von jira-server mit Hilfe einer url, aber ich bin immer ein Fehler.
wie Zertifikat in den code zu überprüfen
Fehler:
Error: unable to verify the first certificate in nodejs
at Error (native)
at TLSSocket.<anonymous> (_tls_wrap.js:929:36)
at TLSSocket.emit (events.js:104:17)
at TLSSocket._finishInit (_tls_wrap.js:460:8)
Meine Nodejs-code:
var https = require("https");
var fs = require('fs');
var options = {
host: 'jira.example.com',
path: '/secure/attachment/206906/update.xlsx'
};
https.get(options, function (http_res) {
var data = "";
http_res.on("data", function (chunk) {
data += chunk;
});
http_res.on("end", function () {
var file = fs.createWriteStream("file.xlsx");
data.pipe(file);
});
});
InformationsquelleAutor der Frage Labeo | 2015-07-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie, das entsprechende root-Zertifikat
Dies ist immer eine viel sicherere option als einfach blind zu akzeptieren unbefugte end-Punkte, die wiederum nur als letzten Ausweg verwendet.
Dies kann so einfach wie das hinzufügen
auf Ihre Bewerbung.
Den SSL-Root-CAs npm-Paket (wie hier verwendet) ist ein sehr nützliches Paket zu diesem problem.
InformationsquelleAutor der Antwort Joshua
für nicht in der Lage zu überprüfen, das first certificate in nodejs ablehnen unerlaubten erforderlich ist
InformationsquelleAutor der Antwort Labeo
Den server, den Sie versuchen zu download kann schlecht konfiguriert ist. Auch wenn es funktioniert in Ihrem browser, es kann nicht sein, einschließlich der alle öffentlichen Zertifikate in der Kette ist notwendig für eine cache-leeren-client zu überprüfen.
Ich empfehlen die überprüfung der Website im SSLlabs-tool: https://www.ssllabs.com/ssltest/
Look für diesen Fehler:
Und so:
InformationsquelleAutor der Antwort Flimm
Anderen schmutzigen hack, der alle Ihre Anforderungen unsicher:
InformationsquelleAutor der Antwort Satara
Können Sie dies tun, indem Sie ändern die Optionen für die Anforderung wie unten. Wenn Sie ein selbst-signiertes Zertifikat oder eine fehlende Vermittler, Einstellung strictSSL auf false gesetzt ist, wird keine Kraft request-Paket, das Zertifikat zu überprüfen.
InformationsquelleAutor der Antwort Sundar
GoDaddy SSL CCertificate
Habe ich erlebt, während Sie versuchen, die Verbindung mit unserem backend-API-server bei GoDaddy Zertifikat und hier ist der code, den ich verwendet, um das problem zu lösen.
PS:
Verwenden Sie das mitgelieferte Zertifikat und vergessen Sie nicht, um die Bibliothek zu installieren
npm install ssl-root-cas
InformationsquelleAutor der Antwort Dean Christian Armada