Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.04.2013, 15:59
Hitriy вне форума Посмотреть профиль Отправить личное сообщение для Hitriy Найти все сообщения от Hitriy
  № 1  
Ответить с цитированием
Hitriy

Регистрация: Feb 2013
Сообщений: 10
По умолчанию Работа с WebSocket через flash

Здравствуйте форумчане. Возникли у меня некоторые вопросы/трудности по этой технологии. Делаю он-лайн игру морской бой. В игру играют два человека, связь между клиентами на сервере сделали с помощью Web Socket-а. На сервере Web Socket работает исправно. Не могу с флешки подключиться к этому серверу.
Что делаю.
1 Из интернета скачал библиотеку https://github.com/mikechambers/as3corelib
2 импортировал библиотеки
3 откомпилировал и выполнил следующий код
Код AS3:
var ws:WebSocket = new WebSocket();
ws.addEventListener("open", function():void {
  trace("Connection opened");
  ws.send("Hello from flash!");
  //ws.close();
});
ws.addEventListener("close", function():void {
  trace("Connection closed");
});
ws.addEventListener("message", function(event:*):void {
  trace("Message: ", event.data);
});
ws.addEventListener("error", function(event:*):void {
  trace("Error1: ", event.error);
});
ws.open("ws://www.youplay.biz", "www.youplay.biz");
В результате выполнения выскакивает ошибка:
Error: Wrong WebSocket handshake respons status: HTTP/1.1 200 OK

Возникли следующие вопросы:
1 необходимо ли для подключения вебсокетов использовать файлы политик?
2 может я что то делаю не правильно?
3 может кто то поделиться своим опытом работы с данным протоколом?

Заранее благодарен за ответы.

Старый 16.04.2013, 17:36
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 2  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Я использую библиотеку FlashSocket.IO:
https://github.com/simb/FlashSocket.IO

Она для флекса, поэтому я немного пошарил по форумам и нашел ее вариант для чистого AS3:
FlashSocket.IO_0.7.0-Alpha.swc

Что касается файла политик - да, нужно его отдавать по 843-му порту.

Старый 16.04.2013, 17:48
Hitriy вне форума Посмотреть профиль Отправить личное сообщение для Hitriy Найти все сообщения от Hitriy
  № 3  
Ответить с цитированием
Hitriy

Регистрация: Feb 2013
Сообщений: 10
тогда получается что бы получить файл политик мне достаточно будет перед соединением с сервером запрашивать его вот так?
Код AS3:
Security.loadPolicyFile("xmlsocket://youplay.biz:843");
или сервак на лету должен отдавать его по сокет соединению?

Старый 16.04.2013, 18:18
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 4  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Флеш его автоматически запросит, когда будет соединяться.
Ничего специально делать не надо.

Читать тут:
http://help.adobe.com/ru_RU/as3/dev/...8a9b90204-7c63

Добавлено через 8 минут
Цитата:
или сервак на лету должен отдавать его по сокет соединению?
У меня файлы политик отдает отдельный сервер.
Сам по себе висит на 843-м порту и отдает файлы политик.
Больше ничего не делает.

Создать новую тему Ответ Часовой пояс GMT +4, время: 21:30.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 21:30.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.