Войти
ПрограммированиеФорумВеб

Помогите с node.js (2 стр)

Страницы: 1 2
#15
0:29, 22 июля 2012

alexes
Увы, переменная  undefined.


#16
19:17, 5 авг. 2012

Сам её сейчас ковыряю.

Нашел несколько косяков из-за которых она не работает.

1. var requiredHeaders = {
    'get': /^GET (\/[^\s]*)/,
    'upgrade': /^WebSocket$/i, // black magic
    'connection': /^Upgrade$/,
    'host': /^(.+)$/,
    'origin': /^(.+)$/
};

Нужно добавить флаг "i" в регулярку заголовка "upgrade", поскольку заголовки могут быть разными "websocket" или "WebSocket".

2. Протокол немного изменился. Текущая версия 07, а в либе поддержка только 75 и 76.
Отличия небольшие нужно в заголовках ответа добавить 'Sec-WebSocket-Accept: {SHA1_KEY}'
SHA1_KEY - это sha1 хэш от заголовка запроса клиента Sec-WebSocket-Key:

sha1( headers["Sec-WebSocket-Key"] + "258EAFA5-E914-47DA-95CA-C5AB0DC85B11" )

Ппосле этих действий сокет открывается и нормально передаются сообщения с клиента на сервер.

3. пока так и не получилось отправить сообщения с сервера на клиент. Такая конструкция почему то не хочет отправлять месагу:

socket.write('\u0000', 'binary');
socket.write(_ds, 'utf8');
socket.write('\uffff', 'binary');

#17
13:30, 6 авг. 2012

AgentX001
> serverNewUser()
this is not instance of function
разницу между вызовом функции и ее инстансом понимаешь?

#18
13:50, 7 авг. 2012

Повеситься можно... Нужно было сразу Flash пробовать :)

#19
16:56, 3 сен. 2012

Если автор ещё занимается темой, то почему node.ws.js?
Он уже не так поддерживается и не столь популярен и удобен как socket.io.
Я юзаю socket.io, никаких проблем сразу "из коробки".

Страницы: 1 2
ПрограммированиеФорумВеб

Тема в архиве.