javascript - NodeJS HTTPS working only on chrome and not on other browsers -


i tried working on simple chat app using nodejs. , want work on https. provided ssl certificate , key, have code:

html

<div class="chat_box">     <div>         <table id="chat_panel"></table>         <input type="hidden" name="chat_time" id="chat_time" value="12:00 am" />     </div>     <table>         <tr>             <td colspan="2">message :                 <textarea rows="3" name="chat_message" id="chat_message"></textarea>             </td>         </tr>         <tr>             <td>                 <input type="text" name="chat_name" id="chat_name" class="fullspan" />             </td>             <td>                 <input type="button" name="send_message" id="send_message" value="send" />             </td>         </tr>     </table> </div> 

server.js

// global vars var http_port   = 8080; var https_port  = 8079; var host        = '127.0.0.1'; // ip of host  // import modules var fs      = require('fs'); var http    = require('http'); var https   = require('https'); var express = require('express'); var request = require('request'); var socketio= require('socket.io');  // certificate var privatekey  = fs.readfilesync('sslcert/server.key', 'utf8'); var certificate = fs.readfilesync('sslcert/server.crt', 'utf8'); var credentials = {     key: privatekey,     cert: certificate };  var app         = express(); var httpserver  = http.createserver(app); var httpsserver = https.createserver(credentials, app); var io          = socketio.listen(httpsserver);  // receive/request io.sockets.on('connection', function(client) {     console.log("new connection detected.");      client.on('message', function(data) {         console.log('recieved:'+data);          var sender  = data.name;         var value   = data.chat;         var time    = data.time;          var dom = '<tr><td class="sender">' + sender + '</td><td class="message">' + value + '</td><td class="sender">' + time + '</td></tr>';          // process recieved data         io.sockets.emit('message', dom);     });  });  // activate server httpserver.listen(http_port, host); httpsserver.listen(https_port, host);  // success message console.log('connection established on '+http_port+'/'+https_port+' : '+host+'. press ctrl + c disconnect.'); 

main.js

var http_port   = 8080; var https_port  = 8079; var host        = '127.0.0.1'; var socket      = io.connect(host+':'+https_port);  $('#send_message').bind('click', function(e) {     e.preventdefault();     chat(); });  function chat() {     var data = {         name: $('#chat_name').val(),         chat: $('#chat_message').val(),         time: $('#chat_time').val()     };      socket.emit('message', data); } socket.on('message', function(data) {     $('#chat_panel').append(data);  }); 

i have no problem in google chrome while using https, when tried use other browsers, not working.

mozilla

and tried switch on http , works on browsers. code problem or need valid/real ssl certificate since using free/test copy of xampp.


Comments

Popular posts from this blog

user interface - How to replace the Python logo in a Tkinter-based Python GUI app? -

objective c - Greedy NSProgressIndicator Allocation -

how to set an OCR language in Google Drive -