![]() |
socket: чтение сообщений с сервера
написал я наконец свой первый сервер:) И теперь хочу повесить на него флэшку..
код из хелпа: Код:
package main{Данный код ведет себя довольно странно: при первом подключении ничего не пишет и остается ждать ответа от сервера, при последующих подключениях выводит приветственное сообщение и отключается. Команда в обоих случаях выполняется. Мне же надо, чтобы сокет считывал обе строки и оставался ждать ответа от сервера. |
Твой сокет может убиваться сборщиком мусора.
Попробуй локальную переменную socket заменить на переменную класса. |
Доброго все мвремени суток, может кто-нибудь поможет мне разобраться с секьюрити для сокет соединения и обновлением для флеш плеера 9,0,155?
Из того, что я знаю: существует 2 вида кроссдоменной хмл : 1- для загрузки флешек, картинок, музыки 2- для общения с сервером по сокетах (о чем и пойдет далее речь) SWF файл я выложил у себя на апаче http://localhost/drag.swf При попытке флешки присоединится к моему ява серверу (localhost,6666) флеш плеер сначала требует кроссдомеину на портах 6666 и 843 ,что сервер ему с радостью и отдает Код:
if (str.contains("policy-file-request")) {Код:
Warning: Timeout on xmlsocket://localhost:843 (at 3 seconds) while waiting for socket policy file. This should not cause any problems, but see http://www.adobe.com/go/strict_policy_files for an explanation. |
А loadPolicyFile вызывается?
|
может лучше отдельную тему создать, тут речь идет не об хмл сокетах..
Все дело было в сервере. Что бы флэш прочитал строку она должна оканчиваться \r, а у меня заканчивалась \n.. не зря в примере, в конце стоит \r\n..(но я подумал нафиг надо.. первоначальный клиент работал и без \r). вопрос: что делает метод flush()? Цитата:
|
О! кстати схожая проблема и столкнулся сегодня. :)
SecurityError в любом (!) случае вызывается для всех портов кроме 80 (на который нельзя создать сокет сервер) из браузера. Флешка отдельно прекрасно соединяется с сервером. Ну конечно с учетом кроссдомейна.хмл А еще тонкий момент - флешка ДОЛЖНА лежать в директории локалхоста! В под-папках даже отдельно флеха не пашет. |
Извините за оффтопик.
2 Ноябрь: Твой сервак тоже жрет почти всю процессорную память? |
нет.. абсолютно не загружает..
сервак на руби, 2 клиента на руби, 3 флэшки (типа чат) совершенно не загружают проц (я вообще полагаю в том и прикол, что не нагружает проц, в отличии от рефрешей..). У меня другая проблема - не могу обновить массив клиентов после отключения одного из них, но, надеюсь скоро разберусь.. а потом пойму и что такое flush()..:) |
Цитата:
Код:
socket = new XMLSocket(); |
Цитата:
|
Using the xmlsocket protocol along with a specific port number, lets you retrieve policy files directly from an XMLSocket server, as shown in the following example:
Security.loadPolicyFile("xmlsocket://foo.com:414"); Эмм щас попробую 2 слэша поставить. - не помогло ,или я всеравно чето не так делаю? Security.loadPolicyFile("xmlsocket://localhost:6666"); Также попробовал грузить файл локально Security.loadPolicyFile("http://localhost/crossdomain.xml"); и вот что выдал лог: Код:
OK: Root-level SWF loaded: http://localhost/drag.swf |
А вы в чем дебажите?
|
Цитата:
И активировать его можно так: заходим в C:\Documents and Settings\(user name)\ открываем mm.cfg (если нет - создаем) и дописываем там: PolicyFileLog=1 # Enables policy file logging PolicyFileLogAppend=1 # Optional; do not clear log at startup закрываем и загружаем флешку. После этого у нас появляется дополнительный файл policyfiles.txt , находящийся в C:\Documents and Settings\(user name)\Application Data\Macromedia\Flash Player\Logs\ там и будет рассказано кто , что и откуда загружал и удалось ли это ему. А на сайте адоба есть еще расшифровка комментов - аппендицит В (appendixB) http://www.adobe.com/devnet/flashpla...curity_07.html но я бы лучше назвал это гемороем... |
Угу, это я знаю, я имею ввиду во флексе или во флеше?
|
Во флеше
|
Понятно...
Слушайте, попробуйте запустить флешку с сокетным соединением к локальному серверу из хтмл страницы. Просто интересно у меня ли только такой глюк защиты. И кстати flush - это функция очиски буфера забитого даннымидля передачи, ну и собственно передача. |
Все ,разобрался.
Читать здесь: http://vapes.na.by/blog/index.php?en...y080416-120458 |
Да... Тебе в бложике спелл чекера явно не хватает. Грамматические ошибки существенно снижают степень доверия к автору.
|
2 vapes:
Не понял к чему ты это :) Ты наверное не понял в чем проблемы возникают. При нормально работающей политике безопасности в FlashPlayer'е она не работает в плагине и в ActiveX элементе браузеров. :) А ты вопщем молодец, что разобрался :) |
флэшка коннектиться к серверу.
http://www.macromedia.com/support/do...manager04.html здесь добавлена директория откуда я все запускаю, соответственно в ней (и во вложенных) работает, за ее пределами нет. Теперь выгружаю на сайт, записываю адрес сайта в разрешенные директории, и почему-то не работает.. |
2 vapes:
Не понял к чему ты это :) Ты наверное не понял в чем проблемы возникают. При нормально работающей политике безопасности в FlashPlayer'е она не работает в плагине и в ActiveX элементе браузеров. :) А ты вопщем молодец, что разобрался :) |
| Часовой пояс GMT +4, время: 16:53. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.