![]() |
|
||||||||||
|
|||||
|
[+4 16.07.08]
Регистрация: Jul 2008
Адрес: Gamburg
Сообщений: 108
|
Здравствуйте!помогите решить проблему! почему - то, когда пытаюсь сконектится с помощью Socket выдает ошибку:
securityErrorHandler: [SecurityErrorEvent type="securityError" bubbles=false cancelable=false eventPhase=2 text="Error #2048"] пробую: Security.loadPolicyFile("http://192.168.55.1/mmo/crossdomain.xml") crossdomain.xml: <?xml version=”1.0”?> <cross-domain-policy> <allow-access-from domain=”http://192.168.55.3” to-ports=”80,8989” /> </cross-domain-policy> ![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Кроссдоменник надо отдавать по тому же порту, т. е. по 8989.
|
|
|||||
|
[+4 16.07.08]
Регистрация: Jul 2008
Адрес: Gamburg
Сообщений: 108
|
__etc это как?
![]() Последний раз редактировалось Venya2007; 12.09.2008 в 15:52. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
|
|
|||||
|
[+4 16.07.08]
Регистрация: Jul 2008
Адрес: Gamburg
Сообщений: 108
|
Сервер на запрос <policy-file-request/> отправляет мне
'<cross-domain-policy>'#13#10 '<allow-access-from domain="192.168.55.3" to-ports="8989"/>'#13#10 '</cross-domain-policy>'#0 но все равно срабатывает событие SecurityErrorEvent! что не так? Последний раз редактировалось Venya2007; 12.09.2008 в 17:49. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Где расположен клиент?
|
|
|||||
|
[+4 16.07.08]
Регистрация: Jul 2008
Адрес: Gamburg
Сообщений: 108
|
Клиента гружу по HTTP с 192.168.55.1, cервер находится на
192.168.55.3! пока тестируем все локально, порт соединения с сервером 8989 |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
А сервер закрывает соединение после отправки кроссдоменника?
|
|
|||||
|
[+4 16.07.08]
Регистрация: Jul 2008
Адрес: Gamburg
Сообщений: 108
|
public class G_Socket extends Socket {
private var response:String;
private var txt:TextField
public function G_Socket(host:String = null, port:uint = 0,t:TextField=null) {
Security.loadPolicyFile("xmlsocket://192.168.55.3:8989")
super(host, port);
xt=t
configureListeners();
}
private function configureListeners():void {
addEventListener(Event.CLOSE, closeHandler);
addEventListener(Event.CONNECT, connectHandler);
addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler);
}
private function writeln(str:String):void {
str += "\n";
try {
writeUTFBytes(str);
}
catch(e:IOError) {
trace(e);
}
}
private function closeHandler(event:Event):void {
txt.text+="closeHandler: " + event+"\n\n"
}
private function connectHandler(event:Event):void {
txt.text+=("connectHandler: " + event)+"\n\n";
}
private function ioErrorHandler(event:IOErrorEvent):void {
txt.text+=("ioErrorHandler: " + event)+"\n\n";
}
private function securityErrorHandler(event:SecurityErrorEvent):void {
txt.text+=("securityErrorHandler: " + event)+"\n\n";
}
private function socketDataHandler(event:ProgressEvent):void {
txt.text+=("socketDataHandler: " + event)+"\n\n";
}
}
кросдомменик получаю такой: <cross-domain-policy> <allow-access-from domain="192.168.55.3" to-ports="8989" /> </cross-domain-policy> и соединение при с сокетом закрывается! Но все равно срабатывает событие SecurityErrorEvent ![]() ![]() Последний раз редактировалось Venya2007; 12.09.2008 в 18:47. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
loadPolicyFile не нужен. Попробуйте указать домен «*» и порт «*».
Возможно, формат XML кроссдоменника неправильный. |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:37. |
|
|
« Предыдущая тема | Следующая тема » |
|
|