нет настройки метода в объекте сервера (Socket.io )

#django #node.js #socket.io

#django #node.js #socket.io

Вопрос:

Я пытаюсь повторить это решение на своем локальном хостинге. Но что-то не так с установкой сокета.ввод-вывод, потому что похоже, что в сокете нет метода configure.модуль ввода-вывода

 var http = require('http');

var server = http.createServer(function(request, response) {
    response.writeHead(200, {"Content-Type": "text/plain"});
    response.write("Hello World");
    response.end();
}).listen(8888);

var io = require('socket.io').listen(server);
console.log (io.configure)

var cookie_reader = require('cookie');

//Configure socket.io to store cookie set by Django
io.configure(function(){
    io.set('authorization', function(data, accept){
        if(data.headers.cookie){
            data.cookie = cookie_reader.parse(data.headers.cookie);
            return accept(null, true);
        }
        return accept('error', false);
    });
    io.set('log level', 1);
});
  

Журнал: не определено

Ошибка типа: объект # не имеет метода ‘configure’ …

Комментарии:

1. Руководство, которому вы следуете, было написано для сокета. Ввод-вывод 0.9.x. Если вы установили сокет. IO 1.0.x, который с тех пор был выпущен, вы должны прочитать руководство по миграции .

2. Спасибо. Итак, теперь я должен использовать метод «use» вместо

Ответ №1:

Функция configure устарела. Вы должны передать конфигурацию (как объект параметров) при инициализации вашего сервера ввода-вывода сокетов подобным образом…

 var io = require('socket.io').listen(server, {
  'authorization' : function(data, accept) {
    // authorization logic
  });
});
  

Смотрите Официальный API для получения дополнительной информации: http://socket.io/docs/server-api /#