Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Проблемма в Firefox и Opera с XMLSocket (http://www.flasher.ru/forum/showthread.php?t=115061)

NeverMore 18.08.2008 11:44

Столкнулся с проблеммой неработоспособности сокета в firefox и opera
при создании многопользовательского чата...

Код:

/* Создаём сокет */

var socket:XMLSocket=new XMLSocket();
if (!socket.connect('10.20.8.1',9876)) {
  trace("He удалось отправить запрос");
  enterStatus.text="He удалось отправить запрос";
}

/* Сокет подсоединился... */

socket.onConnect=function(success:Boolean):Void {
  if (!success) {
    trace("He удалось установить соединение");
    enterStatus.text="He удалось установить соединение";
  } else {
    enterStatus.text="Соединение успешно установлено";
  }
};

Флешку закидываю в http://10.20.8.1/ch.swf
При этом всё работает только в IE.
Проверил версии...
Код:

var flashVersion:String = getVersion();
enterName.text=flashVersion;

В IE 9,0,47,0 , в Опере и Лисе 9,0,124,0
Я использую не кроссбраузерное решение?
Подскажите пожалуйстка как решить данную проблемму :/

NeverMore 18.08.2008 13:52

flash
 
Прочитал мануалы по системе безопасности...
Поступает оказывается с версии 9,0,124 запрос на отдачу файла политик.
Отдаю через сокет...
<?xml version='1.0'?><!DOCTYPE cross-domain-policy SYSTEM 'http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd'><cross-domain-policy><allow-access-from domain='*' to-ports='9876' /></cross-domain-policy>
Естественно с \0 на конце (php сокет)

Всеравно не работает :\

DarkLight 18.08.2008 21:52

Попробуйте делать явный Security.loadPolicyFile перед соединением

wvxvw 18.08.2008 22:13

if(!socket.connect('10.20.8.1',9876)).....
connect() Возвращает Void а не Boolean. Событие коннекта асинхронное, проверять там нечего, Void приводится к Boolean как false.

ЗЫ. еще часто бывает, что кроссдомейн отдают по любому запросу, нужно отдавать дождавшись когда прийдет именно запрос на этот файл, а не когда флешка только законектилась.


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

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