PDA

Просмотр полной версии : XMLSocket вроде конект или нет... =/


Webas
26.10.2006, 18:52
Есть простейший сокет сервер на Delphi. Клиент на флэше делаю... и возникла проблема, заключается она втом что если компилировать флэшку(Ctrl+Enter) то соединение с сервером возникает, а если открыть эту же флэшку в IE, то соединения нет... =\

var socket:XMLSocket = new XMLSocket();
socket.connect("127.0.0.1", 5000);
socket.onConnect = function(success:Boolean) {
if (success) {
txt2.text = "Соединение установлено!";
} else {
txt2.text = "Соединение не установлено!";
}
};
socket.onData = function(text:String):Void {
//trace("Сервер сообщает:"+text);
chat.text += "server : "+text+"\r";
};
socket.onClose = function() {
txt2.text = "Соединение с сервером потеряно.";
};
but_connect.onRelease = function() {
socket.close();
txt2.text = "Подключение к серверу...";
if (!socket.connect("127.0.0.1", 5000)) {
txt2.text = "Соединение не установлено!!!!!!!";
}
};
but.onRelease = function() {
socket.send(txt1.text);
chat.text += "me : "+txt1.text+"\r";
txt1.text = "";
};
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
if (Key.getCode() == 13) {
socket.send(txt1.text);
chat.text += "me : "+txt1.text+"\r";
txt1.text = "";
}
};
Key.addListener(keyListener);

etc
26.10.2006, 18:53
Политика безопасности. Настрой плеер.

Webas
27.10.2006, 20:39
а как это сделать?... и что так получается каждому юзеру надо будет делать тоже самое?
А можно ли как-нить сделать так чтоб не приходилось это делать юзерам?

etc
27.10.2006, 20:50
А сам чат и сокет-сервер на разных доменах находятся?

Webas
27.10.2006, 22:22
тоесть клиент(чат) и сокет сервер? то да... ща вооще локально пробую... и не конектит... когда запускаешь из браузера...

etc
27.10.2006, 23:40
Локально — это сокет на localhost или где?

Webas
28.10.2006, 01:46
на своем компьютере, наверно локал хост... пишу 127.0.0.1 адрес, это и есть ведь локалхост? могу я послать тебе исходник сервера на мыло, тут его не могу прикрепить он весит 400 КБ?

etc
28.10.2006, 02:09
Нет, мне его запускать негде.

В общем, даже на 127.0.0.1 должен быть файл crossdomain.xml для разрешения загрузки.

А вообще, для тестов в самой IDE всё разрешено…

iNils
28.10.2006, 02:15
Данный скрипт не коннектится из html в сокет серверу (в IDE все ок), хотя другой мой скрипт коннектится и там и там.

Ventur
28.10.2006, 03:13
та же проблема. Проверил на своем серваке. Из IDE соединяется

Webas
28.10.2006, 03:45
да в IDE все конектит отлично, но в html небура...
а как должна выглядеть работа с crossdomain.xml?

Webas
30.10.2006, 15:54
неужели никто правда незнает как с этим злом боротся?

etc
30.10.2006, 16:07
Правда в F1.

Webas
30.10.2006, 16:23
ну спасибо, выручил... я уж все там перерыл... и сокетом пытался посылать файл с безопасностью, но и там не одержал победы... воощем уже и незнаю что и делать, где искать баг =/

Badim
30.10.2006, 16:45
это не баг. это недоделка с твой стороны.
в хелпе подробно расписано почему у тебя не конектиться(connect (XMLSocket.connect method))

Sneg
30.10.2006, 17:37
Делать надо следущее: сначала создать crossdomain.xml, потом его загрузить в ролик.

Загрузить его ты можешь несколькими способами:
а) положить его в корень сайта к которому подключаешься (сам его найдет и загрузит)
б) передать его по сокету с помощью <policy-file-request /> (можно использовать любой порт, даже < 1024)
в) загрузить из произвольного места с помощью System.security.loadPolicyFile

Webas
31.10.2006, 01:04
всем спасибо... уже разобрался... Все что написано в хелпе я и делал, загружать кроссдомен, не получалось через HTTP Но получилось через сам сокет...
И для тех у кого возникнет такая проблемма то вам сюда... http://www.flash-mx.ru/forum/topic_show.pl?tid=929;pg=1

Webas
31.10.2006, 01:05
это не баг. это недоделка с твой стороны.
в хелпе подробно расписано почему у тебя не конектиться(connect (XMLSocket.connect method))
тебе отдельное спасибо вооще выручил!!! побольше таких вот ответов в форуме... и тогда, я думаю, все просто в ногу будут тебе кланяться!