J'ai cherché à travers plusieurs tutoriels et questions sur stackoverflow et d'autres sites mais je n'arrive toujours pas à comprendre pourquoi mon script produit une erreur: socket raccrocher ...Socket raccrocher sur le nœud js demande https
J'espère que vous pouvez m'aider J'ai implémenté un serveur https comme dans le tutoriel sur https://www.pixelstech.net/article/1445603357-A-HTTPS-client-and-HTTPS-server-demo-in-Java
fonctionne parfaitement et aussi le client fonctionne. Mais quand je veux créer une demande en javascript et l'exécuter avec nœud js que je reçois l'erreur connue ...
Mon fichier .js:
var https = require('https');
var data = JSON.stringify({
firstName: 'JoaquÌn',
});
function getCall() {
//initialize options values, the value of the method can be changed to POST to make https post calls
var options = {
host : 'localhost',
port : 9999,
path : '/',
rejectUnauthorized: false,
method : 'POST',
headers: {'Connection': 'keep-alive',
'Content-Type': 'application/json; charset=utf-8',
'Content-Length': Buffer.byteLength(data)}
}
//making the https get call
var getReq = https.request(options, function(res) {
console.log("\nstatus code: ", res.statusCode);
res.on('data', function(data) {
console.log(JSON.parse(data));
});
});
//end the request
getReq.end();
getReq.on('error', function(err){
console.log("Error: ", err);
});
}
getCall();
Mon erreur:
Error: { Error: socket hang up
at createHangUpError (_http_client.js:253:15)
at TLSSocket.socketOnEnd (_http_client.js:345:23)
at emitNone (events.js:91:20)
at TLSSocket.emit (events.js:185:7)
at endReadableNT (_stream_readable.js:974:12)
at _combinedTickCallback (internal/process/next_tick.js:80:11)
at process._tickCallback (internal/process/next_tick.js:104:9) code: 'ECONNRESET' }
IntelliJ produit cette partie quand je suis en cours d'exécution du script:
SSLSession :
Protocol : TLSv1.2
Cipher suite : TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
Inut : POST/HTTP/1.1
Inut : Connection: keep-alive
Inut : Content-Type: application/json; charset=utf-8
Inut : Content-Length: 24
Inut : Host: localhost:9999
Inut :
J'espère que vous pouvez hel p moi parce que je ne sais pas pourquoi je reçois l'erreur que j'ai essayé plusieurs solutions, mais aucun d'entre eux a travaillé pour moi ...
Thx et meilleurs voeux Martin
Hey :) Thx pour la réponse, mais après avoir changé la ligne de localhost à l'adresse http localhost je reçois cette réponse: getaddrinfo ENOTFOUND https:: 'Erreur: {erreur // localhost https: // localhost: 9999 à errnoException (dns.js: 28: 10) à GetAddrInfoReqWrap.onlookup [comme onComplete] (dns.js: 76: 26) code: 'ENOTFOUND', errno: 'ENOTFOUND', syscall: 'getaddrinfo' , nom_hôte: 'https: // localhost', hôte: 'https: // localhost', port: 9999} ' – Kellrkind
Pourriez-vous placer le code mis à jour. Les erreurs suggèrent que vous utilisez 'https'. Je suppose que le serveur fonctionne déjà sur le port mentionné –
Hey Désolé pour la réponse tardive, mais nous avons changé notre manière technique et nous utilisons un serveur Wildfly (Wildfly Swarm) pour communiquer avec notre Frontend :) Mais merci vous beaucoup :) – Kellrkind