Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.05.2015, 20:32
Новичок на форуме
Отправить личное сообщение для Edik Посмотреть профиль Найти все сообщения от Edik
 
Регистрация: 16.05.2015
Сообщений: 1

403 Forbidden
Есть чат, залил я его на modulus.io, http://chat-46736.onmodulus.net/chat, но вылазит ошибка 403 Forbidden. Если перейти по http://chat-46736.onmodulus.net/sock...=1431795355548, то пишет "handshake bad origin", в чем может быть проблема ?

мне кажется, что ошибка в этом куске :
module.exports = function(server) {
  var io = require('socket.io').listen(server);
 
  io.set('origins', '*chat-46736.onmodulus.net/*');
  io.set('logger', log);
 
  io.set('authorization', function(handshake, callback) {
    async.waterfall([
      function(callback) {
 
        // сделать handshakeData.cookies - объектом с cookie
        handshake.cookies = cookie.parse(handshake.headers.cookie || '');
        var sidCookie = handshake.cookies[config.get('session:key')];
        //var sid = connect.utils.parseSignedCookie(sidCookie, config.get('session:secret'));
        var sid = require('express').cookieParser(config.get('session:secret'));
 
        loadSession(sid, callback);
      },
      function(session, callback) {
 
        if (!session) {
          callback(new HttpError(401, "No session"));
        }
 
        handshake.session = session;
        loadUser(session, callback);
      },
      function(user, callback) {
        if (!user) {
          callback(new HttpError(403, "Anonymous session may not connect"));
        }
 
        handshake.user = user;
        callback(null);
      }
 
    ], function(err) {
      if (!err) {
        return callback(null, true);
      }
 
      if (err instanceof HttpError) {
        return callback(null, false);
      }
 
      callback(err);
    });
 
  });
 
  io.sockets.on('session:reload', function(sid) {
    var clients = io.sockets.clients();
 
    clients.forEach(function(client) {
      if (client.handshake.session.id != sid) return;
 
      loadSession(sid, function(err, session) {
        if (err) {
          client.emit("error", "server error");
          client.disconnect();
          return;
        }
 
        if (!session) {
          client.emit("logout");
          client.disconnect();
          return;
        }
 
        client.handshake.session = session;
      });
        
    });
 
  });
 
  io.sockets.on('connection', function(socket) {
 
    var username = socket.handshake.user.get('username');
 
    socket.broadcast.emit('join', username);
 
    socket.on('message', function(text, cb) {
      socket.broadcast.emit('message', username, text);
      cb && cb();
    });
 
    socket.on('disconnect', function() {
      socket.broadcast.emit('leave', username);
    });
 
  });
 
  return io;
};

я уже куча вариантов перепробовал, на локалке работает, а там нет (

Последний раз редактировалось Edik, 16.05.2015 в 21:54.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
XHR && HTTP 403 status code && Opera Ex_Soft Opera, Safari и др. 9 05.01.2011 16:44