Socket.io: Error: Cannot find module './lib/encoding' [требует правки]

310
02 февраля 2018, 23:58

Hi! I got error, i don't know why, when and where but it happened

Error:

Error: Cannot find module './lib/encoding'
0|index    |     at Function.Module._resolveFilename (module.js:538:15)
0|index    |     at Function.Module._load (module.js:468:25)
0|index    |     at Module.require (module.js:587:17)
0|index    |     at require (internal/module.js:11:18)
0|index    |     at loadModule (/nodejs/node_modules/negotiator/index.js:108:16)
0|index    |     at Negotiator.encodings (nodejs/node_modules/negotiator/index.js:56:28)
0|index    |     at Accepts.encoding.Accepts.encodings (/nodejs/node_modules/engine.io/node_modules/accepts/index.js:136:26)
0|index    |     at XHR.Polling.doWrite (/nodejs/node_modules/engine.io/lib/transports/polling.js:300:36)
0|index    |     at XHR.Polling.write (/nodejs/node_modules/engine.io/lib/transports/polling.js:265:8)
0|index    |     at /nodejs/node_modules/engine.io/lib/transports/polling.js:250:10

Code

var app = require('express')();
const fs = require('fs');
const config = require('./config-local.json');
const options = {
    key: fs.readFileSync(config.keyPath),
    cert: fs.readFileSync(config.certPath)
};
var server = require('https').createServer(options, app);
var io = require('socket.io')(server);
var redis = require('redis');
var numClients = 0;
server.listen(3345);
io.on('connection', function (socket) {
    numClients++;
    console.log("new client connected");
    var redisClient = redis.createClient();
    redisClient.subscribe('channel1');
    redisClient.subscribe('channel2');
    redisClient.subscribe('channel3');
    redisClient.subscribe('channel4');
    redisClient.subscribe('channel5');
    redisClient.subscribe('channel6');
    redisClient.subscribe('channel7');
    redisClient.subscribe('channel8');
    redisClient.subscribe('channel9');
    redisClient.on("message", function(channel, message) {
        console.log("New message: " + message + ". In channel: " + channel);
        socket.emit(channel, message);
    });
    socket.emit('online', numClients);
    socket.on('disconnect', function() {
        numClients--;
        socket.emit('online', numClients);
        console.log("client disconnected", numClients);
        redisClient.quit();
    });
});

Setup

  • OS: Ubuntu 16.04 LTS
  • browser: ANY
  • socket.io version: 2.0.3

Other information (e.g. stacktraces, related issues, suggestions how to fix)

  • Negotiator ofc has ./liv/encoding.js
  • App works until socket got 10 - 15 clients
  • P.S. Sorry for vars
READ ALSO
Что не так с производительностью на мобильном Chrome?

Что не так с производительностью на мобильном Chrome?

Написал свое приложение на JavaScript и отправился его тестировать

334
Как передать параметры скриптом?

Как передать параметры скриптом?

Допустим имеется ссылка <a href="siteru" class="js-goto-link">link</a> И есть скрипт:

241
Удвоить элементы массива [требует правки]

Удвоить элементы массива [требует правки]

Подскажите пожалуйста, как удвоить элементы массива без использования циклов?

262
Синхронизировать &lt;Input tyre=&ldquo;range&rdquo;/&gt; и store

Синхронизировать <Input tyre=“range”/> и store

Приложение должно применять стили к изображению в зависимости от изменений ползунков в

391