Модераторы: korob2001, ginnie

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> клиент-сервер. серверная часть perl, клиент: javascript websocket 
V
    Опции темы
Bulat
Дата 16.7.2013, 19:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 5
Всего: 57



arto, делать мне больше нечего, как тебя учить.. Если ты не в состоянии увидеть свои ошибки сам.............


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
arto
Дата 16.7.2013, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



учить не надо. просто указать на ошибки.
PM MAIL ICQ   Вверх
Bulat
Дата 16.7.2013, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 5
Всего: 57



Цитата(arto @  12.7.2013,  07:42 Найти цитируемый пост)
2. RFC 6455 1.2.  Protocol Overview: The handshake from the server looks as follows:

        HTTP/1.1 101 Switching Protocols
        Upgrade: websocket
        Connection: Upgrade
        Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
        Sec-WebSocket-Protocol: chat


Цитата(arto @  13.7.2013,  11:43 Найти цитируемый пост)
пс. дамп хендшейка с http://www.websocket.org/echo.html:
Hypertext Transfer Protocol
    HTTP/1.1 101 Web Socket Protocol Handshake\r\n
        [Expert Info (Chat/Sequence): HTTP/1.1 101 Web Socket Protocol Handshake\r\n]
            [Message: HTTP/1.1 101 Web Socket Protocol Handshake\r\n]


Давай без обид... Но ты сейчас устроил небольшой флуд, пытаясь гнуть передо мной пальцы и демонстрируя ум, там где его нет.. Я даже не лезу в рфс, я просто процитирую тебя... Обрати внимание на строки

HTTP/1.1 101 Switching Protocols
HTTP/1.1 101 Web Socket Protocol Handshake\r\n


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
arto
Дата 16.7.2013, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



RFC 2616 6.1.1 Status Code and Reason Phrase:

   The Status-Code element is a 3-digit integer result code of the
   attempt to understand and satisfy the request. These codes are fully
   defined in section 10. The Reason-Phrase is intended to give a short
   textual description of the Status-Code. The Status-Code is intended
   for use by automata and the Reason-Phrase is intended for the human
   user. The client is not required to examine or display the Reason-
   Phrase.

ещё есть замечания?
PM MAIL ICQ   Вверх
Bulat
Дата 16.7.2013, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 5
Всего: 57



arto, 

HTTP/1.1 101 Switching Protocols
HTTP/1.1 101 Web Socket Protocol Handshake\r\n

Разница в этих двух строках есть или полностью одинаковые??


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
arto
Дата 17.7.2013, 07:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



с точки зрения клиента -- одинаковые.
с тоэки зрения человека -- разные.

советую прочитать соответствующие rfc.
PM MAIL ICQ   Вверх
Bulat
Дата 17.7.2013, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 5
Всего: 57



arto, что в лоб, что по лбу  smile 

Я тогда задам вопрос по другому, рфс для кого пишут?? Для "клиентов" или для "людей"??


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
ginnie
Дата 17.7.2013, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 6.1.2008
Где: Москва

Репутация: 38
Всего: 49



Чтобы обсуждение не выглядело, как дуэль, тоже задам вопрос
Цитата(Bulat @  12.7.2013,  06:25 Найти цитируемый пост)
2. При формировании ответного ключа необходимо дополнять символом '=', и действительно в примерах так оно и укаано, а в описании я об этом ничего не нашел

Откуда Вы это правило взяли? У Вас в примере
Цитата(Bulat @  10.7.2013,  16:52 Найти цитируемый пост)
Sec-WebSocket-Accept: SL2qAawt3BX3DYVcQvXWOgB3DWE

значение состоит из 27 символов, т.е. оно не соответствует кодировке base64.

И еще вопросик: с каким из заголовков 
Код

HTTP/1.1 101 Switching Protocols
HTTP/1.1 101 Web Socket Protocol Handshake

не работает?

Это сообщение отредактировал(а) ginnie - 17.7.2013, 17:48


--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
Bulat
Дата 18.7.2013, 04:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 5
Всего: 57



Цитата(ginnie @  17.7.2013,  17:46 Найти цитируемый пост)
Откуда Вы это правило взяли? У Вас в примере

Методом проб и ошибок....

Если мне не веришь, попробуй сам протестируй.

Цитата(ginnie @  17.7.2013,  17:46 Найти цитируемый пост)
значение состоит из 27 символов, т.е. оно не соответствует кодировке base64.


Вот кодировке base64 оно как раз и соответствует.

Цитата(ginnie @  17.7.2013,  17:46 Найти цитируемый пост)
И еще вопросик: с каким из заголовков 


И с тем и с тем, работающий вариант,

либо
Код

HTTP/1.1 101 Switching Protocols\r\n


либо

Код

HTTP/1.1 101 Web Socket Protocol Handshake\r\n



--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
Bulat
Дата 18.7.2013, 05:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 5
Всего: 57



Кто умеет тот делает кто не умеет тот учит других.  Бернард Шоу


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
arto
Дата 18.7.2013, 07:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



т.е. вы не знаете, для кого пишутся rfc?
называется -- приехали, такие сейчас разработчики, хе-хе :)

Добавлено через 3 минуты и 52 секунды
btw, perldoc -m Protocol::WebSocket::Response
...
sub _parse_first_line {
    my ($self, $line) = @_;

    my $status = $self->status;
    unless ($line =~ m{^HTTP/1\.1 $status }) {
        $self->error('Wrong response line');
        return;
    }

    return $self;
}
...
PM MAIL ICQ   Вверх
ginnie
Дата 18.7.2013, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 6.1.2008
Где: Москва

Репутация: 38
Всего: 49



Цитата(Bulat @  18.7.2013,  04:18 Найти цитируемый пост)
Вот кодировке base64 оно как раз и соответствует.

Открываем rfc4648 (The Base16, Base32, and Base64 Data Encodings) и читаем
The encoding process represents 24-bit groups of input bits as output
strings of 4 encoded characters.  Proceeding from left to right, a
24-bit input group is formed by concatenating 3 8-bit input groups.
These 24 bits are then treated as 4 concatenated 6-bit groups, each
of which is translated into a single character in the base 64
alphabet.
т.е. результат по длине всегда кратен 4 символам, а 27 никак 4 не кратно.

P.S. "Всякая профессия есть заговор против непосвященного." Бернард Шоу

Это сообщение отредактировал(а) ginnie - 18.7.2013, 12:59


--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0644 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.