Когда я хочу подключиться к серверу узлов через клиент, переключение протокола выполняется навсегда. Может кто-нибудь сказать мне, почему это происходит?Node.js и Socket.io: при переходе протокола ssl в ожидании вечно
Вот код на стороне сервера:
var https = require('https');
var fs = require('fs');
var options = {
key: fs.readFileSync('*******'),
cert: fs.readFileSync('*******'),
passphrase: '*******',
rejectUnauthorized: false
};
var app = https.createServer(options);
var io = require('socket.io').listen(app);
app.listen(3700);
io.sockets.on('connection', function (client) {
client.on('join', function() {
//
});
});
А вот на стороне клиента одно:
var baseURL = getBaseURL();
var socketIOPort = 3700;
var socketIOLocation = baseURL + socketIOPort;
var socket = io.connect(socketIOLocation, {secure: true, rejectUnauthorized: false});
function getBaseURL()
{
return (location.protocol + "//" + location.hostname + ":" + location.port);
}
Я использую самозаверенные сертификаты на локальном хосте.
Mozilla сообщает, что соединение отменено и пытается восстановить соединение, Chrome говорит, что статус «101 Switching protocols» и время (латентность) - «Ожидание».
mscdex, к сожалению, это не помогло. Он по-прежнему показывает, что message = ( – eldorjon
Что делает 'console.log (socketIOLocation)' show? – mscdex
Кроме того, ваш клиент html и javascript обслуживается через https? – mscdex