Partage
  • Partager sur Facebook
  • Partager sur Twitter

Nodejs, socket.io et ssl

    19 juin 2018 à 21:58:12

    Bonjour,

    Je débute en nodejs et j'ai donc suivi le cours du site. Je souhaite faire un chat sur mon site j'ai donc réutiliser le code que l'ont trouve dans le cours et cela marche parfaitement sur mon site de test ( qui n'est pas en ssl ). Maintenant que le chat marche bien sur le site de test je voudrais le mettre en production mais le problème arrive car celui-ci est en ssl...

    Voila mon code :

    var app = require('express')(),
    https = require('https'),
    date = require('date-and-time'),
    ent = require('ent');
    
    var fs = require('fs');
      
    https.createServer({
      key: fs.readFileSync('abyssus-key.pem'),
      cert: fs.readFileSync('abyssus-cert.pem')
    }, app).listen(8443);
    
    
    var io = require('socket.io')(https);
    
    
    app.get('/', function (req, res) {
      res.sendFile(__dirname + '/index.html');
    });
    
    console.log('Chargement du fichier ok'); 
    
    io.sockets.on('connection', function (socket) { 
    
    console.log('Connection');
    
    //--- suite du code ----
    

    Quand j'execute le ficher j'ai bien le "Chargement du fichier ok" dans les logs par contre a la connection du client je n'ai rien.

    Voici le fichier client "index.html" j'ai sa comme indiquer dans le tuto :

    <script src="https://code.jquery.com/jquery-1.10.1.min.js"></script>
    
    <script src="/socket.io/socket.io.js"></script>

    et dans la console de mon navigateur j'ai ceci en erreur : Échec du chargement pour l’élément <script> dont la source est « https://mondomaine.com:8443/socket.io/socket.io.js ».

    C'est quand même assez frustrant que le code fonctionne sans ssl...

    mon code sans ssl au cas ou :

    var app = require('express')(),
    server = require('http').Server(app),
    io = require('socket.io')(server),
    date = require('date-and-time'),
    ent = require('ent');
    
    app.get('/', function (req, res) {
      res.sendFile(__dirname + '/index.html');
    });
    
    io.sockets.on('connection', function (socket) { }
    
    server.listen(8080);

    Voila si vous avez une idée d'ou cela peux venir je vous serez reconnaissant a vie :D

    -
    Edité par Darkwave_gaming 19 juin 2018 à 21:59:59

    • Partager sur Facebook
    • Partager sur Twitter
      22 juin 2018 à 13:49:27

      Bonjour, 

      tu es sur que tes certificats sont bons ?

      Il faut peut-etre un route pour envoyer la ressource au client.

      • Partager sur Facebook
      • Partager sur Twitter

      Nodejs, socket.io et ssl

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown