Виталий Я.
659 повідомлень
#12 років тому
Бьюсь второй день, но не могу заставить флешку работать.
Для ознакомления -
Может вы сможете мне помочь?
Вадим П.
182 повідомлення
#12 років тому
Я сталкивался. Как раз сейчас игру дописали на сокетах (клиент на флэше, а сервер на С++). Помучились денек тоже...
Если еще актуально пиши ))

Серверу достаточно передать строчку при первом коннекте
<?xml version="1.0"?><cross-domain-policy><allow-access-from domain="*" to-ports="*"/></cross-domain-policy>

после этого желательно разорвать и повторно соеденится
Сергей Р.
25 повідомлень
#12 років тому
По умолчанию флэшка коннектится на 843 пор.
Если порт на котором висит policy сервер ( лучше всего если он будет отдельно от сокет сервера ) другой, то это надо указать во флэшке до попытки подключения: Security.loadPolicyFile("xmlsocket://host:port" ) ;
причем, если сокет сервер находится на привилегированном порту ( 0-1024) , то и сервер выдающий polcy так же должен быть на привилегированном порту, иначе соединения не будет.
Цитата ("Stan-87"):
после этого желательно разорвать и повторно соеденится

Обязательно разорвать соединение на policy сервере ( не во флэш). Флэшка сама переподключится.

кроссдомайн должен быть таким

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<!-- Policy file for xmlsocket://socks.mysite.com -->
<cross-domain-policy>
<allow-access-from domain="*" to-ports="507" />
</cross-domain-policy>

передача файла с полиси должна завершиться нулем.

Если вы совмещаете выдачу полису и сокет сервер в одном приложении - я бы не рекомендовал так делать.