![]() |
|
||||||||||
|
|||||
|
listener
|
LinuxVideo - супер.
а теперь, если вас не затруднит, LinuxVideo - ваше решение проблемы автора. задача. используя стандартный флэш-клиент, осуществить соединение с сервером, передать/получить данные в удобном для автора формате (вариант - JSON). при этом предполагается, что данные могут либо должны заносится/выниматься в/из базу(ы). ..... решения на основе LoadVars/XML.sendAndLoad+PHP/Perl не предлагать ...... хорошо бы без терминологических опусов. просто те самые 20 строчек кода, для начала. ..... (добавлено) komar, ок. теперь все встало на свои места. почему бы было не назвать топик типа "Не работает то-то и то-то (AS3)" и не понуждать всех угадывать то что вам действительно нужно? Последний раз редактировалось alexcon314; 16.11.2007 в 14:17. |
|
|||||
|
komar, http-протокол разрывает соединение сразу после обмена данными, и вообще хз как реагирует на не-браузеры, апач по идее ждет - потом нах шлет, че делает IIS науке вообще не известно, флешу это не нравится, пиши отдельный сервер
А вообще чтобы вкурить тему - напиши сначала консольный клиент (ну или сп*зди откуда-нибудь, опен-соурс нынче популярен), подолбись им на 80й порт - и внимательно подумай над тем что он тебе расскажет |
|
|||||
|
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;
}
Из примера выкинуто немного, зато в 20 строк уложился. |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 15
|
хорошо что всем (надеюсь всем) всё стало понятно.
Я хотел сначал добавить эту тему в раздел про АС3, но считаю все-таки что дело не сколько в работе класса Socket, сколько в модели общения с сервером. Т.е. как раз "другие технологии" + уточню. Сейчас меня пока не интересует передача/получение данных, если будет сокет (канал) я это смогу осуществить. пхп на стороне сервера (работа с БД) тоже в принципе решено. Дело именно в коннекте. Т.е. варианты какие у меня наварились в течении этой недели: 1. Проблема с настройками сервера (админы и хостеры говорят что проблем быть не может) 2. Проблема с правилами безопасности (вохможна, хотя по манам не должно быть), и + не выдается никаких ошибок безопасности. На них тоже стоят листенеры. 3. Проблема правом коннекта к апачу для сторонних приложений (swf вместо броузера), хотя exe коннектится даже с локалки. 4. Ограничения коннекта в самом броузере (например, броузер не дает содержимому страницы осуществлять коннект в обход броузера). 5. Настройки флэшки на адобе (manager) и подобное не применимо поидее. 6. Видел мнение, что нужны выделенные серверы. Что мол на виртуальный хост коннект не получится. По-моему чушь, т.к. запросы страниц идут через такие же каналы. 7. Есть мнение что права коннекта могут зависеть от типа вставки swf в хтмл страницу. Т.е. обжекты, эмбеды и т.д. + часто многие используют яваскрипт для интерпретации флэшек (обычно для ИЕ, т.е. в нем баг, и сами микросовтовцы распространяли пример функций, как надо в для ИЕ вставлять флэшки). |
|
|||||
|
Banned
[+4 11.12.07]
[+4 18.03.08] Регистрация: Oct 2007
Сообщений: 269
|
> Проблема с настройками сервера (админы и хостеры говорят что проблем быть не может)
Бери сниффер и смотри. Приходит ли вообще хоть чего-то, чего в ответ. > По-моему чушь, т.к. запросы страниц идут через такие же каналы. совершенно верно |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 15
|
Цитата:
Цитата:
Цитата:
Но стобы этим пользовать нужны спец знания, которых у меня нет. А вопрос был задан с расчетом, что кто-то пользовался классом Сокет, или сталкивался с подобными проблемами. Ответы типа "возми то-то, догадайся сам" по-моему не для форума, где должны помогать решать задачи. Цитата:
Последний раз редактировалось komar; 16.11.2007 в 14:55. |
|
|||||
|
Тваюжмать! Не услышишь ты ничего от 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. Таких проблем не встречал, ничо сказать не могу |
|
|||||
|
Цитата:
|
|
|||||
|
Регистрация: 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 файл. (как раз те случаи, в которых коннект срабатывает). |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 15
|
Ув. админы. Специально пишу отдельным постом.
Измените пожста название темы (как самому сделать не нашел). Т.к. разговор уже ушел в другое русло (про альтернативы закончили, речь о классе Socket из AS3, и его коннекте с сервером), а новую тему открывать нет смысла. |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:01. |
|
|
« Предыдущая тема | Следующая тема » |
|
|