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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.11.2007, 14:07
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 21  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
LinuxVideo - супер.
а теперь, если вас не затруднит, LinuxVideo - ваше решение проблемы автора.
задача.
используя стандартный флэш-клиент, осуществить соединение с сервером, передать/получить данные в удобном для автора формате (вариант - JSON).
при этом предполагается, что данные могут либо должны заносится/выниматься в/из базу(ы).
.....
решения на основе LoadVars/XML.sendAndLoad+PHP/Perl не предлагать .
.....
хорошо бы без терминологических опусов. просто те самые 20 строчек кода, для начала.
.....
(добавлено)
komar, ок. теперь все встало на свои места.
почему бы было не назвать топик типа "Не работает то-то и то-то (AS3)" и не понуждать всех угадывать то что вам действительно нужно?


Последний раз редактировалось alexcon314; 16.11.2007 в 14:17.
Старый 16.11.2007, 14:29
grunerasta вне форума Посмотреть профиль Отправить личное сообщение для grunerasta Найти все сообщения от grunerasta
  № 22  
Ответить с цитированием
grunerasta
 
Аватар для grunerasta

Регистрация: Mar 2007
Адрес: Таиланд
Сообщений: 121
Отправить сообщение для grunerasta с помощью ICQ
komar, http-протокол разрывает соединение сразу после обмена данными, и вообще хз как реагирует на не-браузеры, апач по идее ждет - потом нах шлет, че делает IIS науке вообще не известно, флешу это не нравится, пиши отдельный сервер

А вообще чтобы вкурить тему - напиши сначала консольный клиент (ну или сп*зди откуда-нибудь, опен-соурс нынче популярен), подолбись им на 80й порт - и внимательно подумай над тем что он тебе расскажет

Старый 16.11.2007, 14:34
LinuxVideo вне форума Посмотреть профиль Найти все сообщения от LinuxVideo
  № 23  
Ответить с цитированием
LinuxVideo
Banned
[+4 11.12.07]
[+4 18.03.08]

Регистрация: Oct 2007
Сообщений: 269
> http-протокол разрывает соединение сразу после обмена данными

keep-alive


> просто те самые 20 строчек кода, для начала.

Код:
           #!/usr/bin/perl -Tw
           use Socket;
           my $EOL = "\015\012";
           sub logmsg { print "$0 $$: @_ at ", scalar localtime, "\n" }
           my $port = shift || 2345;
           my $proto = getprotobyname('tcp');
           ($port) = $port =~ /^(\d+)$/                        or die "invalid port";
           socket(Server, PF_INET, SOCK_STREAM, $proto)        || die "socket: $!";
           bind(Server, sockaddr_in($port, INADDR_ANY))        || die "bind: $!";
           listen(Server,SOMAXCONN)                            || die "listen: $!";
           my $paddr;
           $SIG{CHLD} = \&REAPER;
           for ( ; $paddr = accept(Client,Server); close Client) {
               my($port,$iaddr) = sockaddr_in($paddr);
               my $name = gethostbyaddr($iaddr,AF_INET);
               print Client "Hello there, $name, it's now ",
                               scalar localtime, $EOL;
           }
(c) perldoc perlipc
Из примера выкинуто немного, зато в 20 строк уложился.

Старый 16.11.2007, 14:35
komar вне форума Посмотреть профиль Отправить личное сообщение для komar Найти все сообщения от komar
  № 24  
Ответить с цитированием
komar

Регистрация: Nov 2007
Сообщений: 15
хорошо что всем (надеюсь всем) всё стало понятно.

Я хотел сначал добавить эту тему в раздел про АС3, но считаю все-таки что дело не сколько в работе класса Socket, сколько в модели общения с сервером. Т.е. как раз "другие технологии"

+ уточню. Сейчас меня пока не интересует передача/получение данных, если будет сокет (канал) я это смогу осуществить. пхп на стороне сервера (работа с БД) тоже в принципе решено.

Дело именно в коннекте.
Т.е. варианты какие у меня наварились в течении этой недели:
1. Проблема с настройками сервера (админы и хостеры говорят что проблем быть не может)
2. Проблема с правилами безопасности (вохможна, хотя по манам не должно быть), и + не выдается никаких ошибок безопасности. На них тоже стоят листенеры.
3. Проблема правом коннекта к апачу для сторонних приложений (swf вместо броузера), хотя exe коннектится даже с локалки.
4. Ограничения коннекта в самом броузере (например, броузер не дает содержимому страницы осуществлять коннект в обход броузера).
5. Настройки флэшки на адобе (manager) и подобное не применимо поидее.
6. Видел мнение, что нужны выделенные серверы. Что мол на виртуальный хост коннект не получится. По-моему чушь, т.к. запросы страниц идут через такие же каналы.
7. Есть мнение что права коннекта могут зависеть от типа вставки swf в хтмл страницу. Т.е. обжекты, эмбеды и т.д. + часто многие используют яваскрипт для интерпретации флэшек (обычно для ИЕ, т.е. в нем баг, и сами микросовтовцы распространяли пример функций, как надо в для ИЕ вставлять флэшки).

Старый 16.11.2007, 14:39
LinuxVideo вне форума Посмотреть профиль Найти все сообщения от LinuxVideo
  № 25  
Ответить с цитированием
LinuxVideo
Banned
[+4 11.12.07]
[+4 18.03.08]

Регистрация: Oct 2007
Сообщений: 269
> Проблема с настройками сервера (админы и хостеры говорят что проблем быть не может)

Бери сниффер и смотри. Приходит ли вообще хоть чего-то, чего в ответ.


> По-моему чушь, т.к. запросы страниц идут через такие же каналы.

совершенно верно

Старый 16.11.2007, 14:44
komar вне форума Посмотреть профиль Отправить личное сообщение для komar Найти все сообщения от komar
  № 26  
Ответить с цитированием
komar

Регистрация: Nov 2007
Сообщений: 15
Цитата:
Сообщение от grunerasta
komar, http-протокол разрывает соединение сразу после обмена данными
да, я знаю, ну и что. Разорвал соединени. На как данные понадобились, мы его снова открыли, для этого класс Сокет и юзается

Цитата:
и вообще хз как реагирует на не-браузеры
об этом и речь. Так тогда и скажите, что не в тот форум пришел.

Цитата:
А вообще чтобы вкурить тему - напиши сначала консольный клиент (ну или сп*зди откуда-нибудь, опен-соурс нынче популярен), подолбись им на 80й порт - и внимательно подумай над тем что он тебе расскажет
писать ниче не надо. Есть telnet, есть ворох сниферов если надо более подробно.
Но стобы этим пользовать нужны спец знания, которых у меня нет.

А вопрос был задан с расчетом, что кто-то пользовался классом Сокет, или сталкивался с подобными проблемами.

Ответы типа "возми то-то, догадайся сам" по-моему не для форума, где должны помогать решать задачи.


Цитата:
Сообщение от LinuxVideo
> Проблема с настройками сервера (админы и хостеры говорят что проблем быть не может)

Бери сниффер и смотри. Приходит ли вообще хоть чего-то, чего в ответ.
К этому все идет. Снифер я нашел, терь ищу кто мне с ним работать поможет. А то он больно навороченный.


Последний раз редактировалось komar; 16.11.2007 в 14:55.
Старый 16.11.2007, 15:05
grunerasta вне форума Посмотреть профиль Отправить личное сообщение для grunerasta Найти все сообщения от grunerasta
  № 27  
Ответить с цитированием
grunerasta
 
Аватар для grunerasta

Регистрация: Mar 2007
Адрес: Таиланд
Сообщений: 121
Отправить сообщение для grunerasta с помощью ICQ
Тваюжмать! Не услышишь ты ничего от 80го порта!
http://www.scribd.com/doc/134861/Soc...ng-with-python - описание
http://python.active-venture.com/lib...t-example.html - питон эхосервер

А с хостингом у тебя большие проблемы - во первых виртуальный, во вторых винда, в третих иис. Полный комплект суррогатных серверных технологий, которые непонятно через какую ж работают (админы сами не знают - вот и шлют тебя нах и идут пить пиво).

Выделеный сервер - это тво ип, твоя строка, твой сервер - че хош то и вешай, а виртуальный - это один большой компутер и много сайтов, сайт выдается взависимости от заголовка (грубо говоря от того, что ты напишешь в адресной строке браузера) и пока заголовок не пришел - он [сервер] будет очень тактично молчать.

Итог:
1. Кто не платит идет - идех нах, закон жизни, в том числе и хостерской.
2. Проблема есть, решение выше
3. Опции компиляции проверь, чтобы было написано что-то вроде "4network"
4. Дает
5. Мысль не понял
6. Мнение обьективно (см п.1)
7. Таких проблем не встречал, ничо сказать не могу

Старый 16.11.2007, 15:08
grunerasta вне форума Посмотреть профиль Отправить личное сообщение для grunerasta Найти все сообщения от grunerasta
  № 28  
Ответить с цитированием
grunerasta
 
Аватар для grunerasta

Регистрация: Mar 2007
Адрес: Таиланд
Сообщений: 121
Отправить сообщение для grunerasta с помощью ICQ
Цитата:
да, я знаю, ну и что. Разорвал соединени. На как данные понадобились, мы его снова открыли, для этого класс Сокет и юзается
Чувак, ты не в теме - сокет юзается для того чтобы открыть соединение и не закрывать его, пока юзер не свалит, реально сокет нужен для того чтобы не только флешка могла командовать сервером, но и сервер флешкой (например биржевые сводки - флешка ничего не дергает, а сервер без спроса шлет ей данные)

Старый 16.11.2007, 16:04
komar вне форума Посмотреть профиль Отправить личное сообщение для komar Найти все сообщения от komar
  № 29  
Ответить с цитированием
komar

Регистрация: Nov 2007
Сообщений: 15
2grunerasta:

ты сама не втеме.
Я сокет юзаю для создания канала (это его прямое назначение, а оставлять его открытым или закрывать после обмена данными, это отдельная темы. И как прально LinuxVideo сказал, это прописывается в хедере запроса) между флэшкой и сервером, меня твоя биржа не интересует.

С хостингом у меня все впорядке. Щас тока раз ты тут ляпнул что-то, побегу выделенный покупать. Ага.
Уже две страницы речь идет об Апаче на линуксе. Про иис упомянул один раз - на нем были тесты, там все работает.

От виртуальности хостинга работа сервера зависеть не должна, он как слушал порт, так и слушает. + даже если, как ты говоришь, на простой коннек ответа идти не должно (типа там сервер плохой, бла бла бла) - пробовали и запросы отправлять, разницы никакой.

+ коннект проходит, и запросы проходят, и даже отрабатывается скрипт. Если флэшка компилеца из среды или из ехе (уже ни раз писал). Так что о невозможности коннекта, ваще ниче слышать не хочу. Он возможен, но где-то сидит косяк.

Ответ, типа пади питон изучи, и не мудись с флэшем очень в тему +1

на счет "итог:"`а, тоже улыбнуло. Опять все сводится к тому, что чтобы swf работал как описано в мане к нему (флэшу), надо ставить до*я приблуд, знать еще кучу языков, самому написать сервер и т.д.

-----

Еще к слову.
3. Опции компиляции проверь, чтобы было написано что-то вроде "4network"

Эта опция нужна чтобы устанавливать настройки для флэшек запущенных локально. Почему локально? Объясняю.
Есть такое понятие sandbox. В мане описано подробно. Оно управляет базовыми правилами безопасности, и определяется в основном локацией флэшки. Т.е. это система (предположительно файловая, в которой флэшка и лежит) + приложение которое открывает флэшку = отношение между ними.

Если флэшка запускается локально (напрямую в плэйере, или через броузер, но локально) у нее может быть два статуса:
- localWithNetwork (свобода действий в свой локали, допустим выход в интернет, но там уже надо соблюдать правила безопасности, и обычно кроссдоменности)
- localWithFile (только локально)
Значения думаю понятны. Вот выбор из них как раз и определяют настройки компиляции. Соответственно если оставить то что стоит по-умолчанию, мы получим localWithFile.

Когда флэшка запускается по УРЛ с сервера (даже если мы запускаем хтмл страницу, в которой флэшка), то полюбому влэшка получает статус
REMOTE. Означает что влэшка в рамках своего домена свободна в действиях, и работает по правилам безопасности домена (хоста, сервера).

+ в описании класса Sокет, указано:
Data loading is not allowed if the calling SWF file is in the local-with-file-system sandbox and the target resource is from a network sandbox.
Data loading is also not allowed if the calling SWF file is from a network sandbox and the target resource is local.

Недопустимые "песочницы" видим. Наша флэшка под это не подпадает.

+ есть четвертый вариант sandbox`a : localTrusted. Как я понял - ваще полнейшая свобода. Такой статус флэшка получает при компиляции в среде флэша, и при компиляции в exe файл. (как раз те случаи, в которых коннект срабатывает).

Старый 16.11.2007, 16:11
komar вне форума Посмотреть профиль Отправить личное сообщение для komar Найти все сообщения от komar
  № 30  
Ответить с цитированием
komar

Регистрация: Nov 2007
Сообщений: 15
Ув. админы. Специально пишу отдельным постом.

Измените пожста название темы (как самому сделать не нашел). Т.к. разговор уже ушел в другое русло (про альтернативы закончили, речь о классе Socket из AS3, и его коннекте с сервером), а новую тему открывать нет смысла.

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

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

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


 


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


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