XMLSocket (object)
Объект XMLSocket осуществляет связь компьютера, на котором запущен Flash Player, с сервером, идентифицируя его по IP адресу или по доменному имени.
Использование объекта XMLSocket
Чтобы использовать объект XMLSocket, компьютер-сервер должен запустить "daemon", который понимает протокол объекта XMLSocket. Протоколы следующие:
XML сообщение передается через полное дуплексное потоковое TCP/IP соединение. | |
Каждое сообщение XML является законченным документом XML, заканчивающееся нулевым байтом. | |
Неограниченное количество сообщений XML может быть передано и принято за одно соединение XMLSocket. |
Объект XMLSocket полезен для клиент-серверных приложений, которые требуют малого времени ожидания, типа чат-систем реального времени. Традиционные чат-системы, основанные на HTTP, часто опрашивают сервер и загружают с него новые сообщения, используя HTTP запрос. Напротив, чат-системы основанные на XMLSocket, поддерживают открытое подключение к серверу, которое позволяет серверу немедленно посылать входящие сообщения без запроса от клиента.
Установка сервера на постоянную связь с объектом XMLSocket может быть нежелательна. Если Ваше приложение не требует интерактивности в реальном времени, используйте loadVariables или XML связь с сервером, основанную на HTTP (XML.load, XML.sendAndLoad, XML.send), вместо объекта XMLSocket.
Для использования методов объекта XMLSocket, сначала необходимо использовать конструктор new XMLSocket, чтобы создать новый объект XMLSocket.
XMLSocket и безопасность
Поскольку объект XMLSocket устанавливает и поддерживает открытое подключение к серверу, из соображений безопасности в объект XMLSocket были помещены следующие ограничения:
Метод XMLSocket.connect может соединиться только с TCP портами, номера которых больше или равны 1024. Одно последствие этого ограничения - то, что серверный "daemons", который связывается с объектом XMLSocket, должен также быть назначен на порт больше или равный 1024. Порты номерами ниже 1024 часто используются системными сервисами, такими как FTP, Telnet и HTTP, поэтому объект XMLSocket не допускается к этим портам. Ограничение номеров портов ограничивает возможность того, что к этим ресурсам будут неуместно обращаться и неправильно эксплуатировать. | |
Метод XMLSocket.connect может соединиться только с компьютером в том-же поддомене, где расположен файл SWF (клип). Это ограничение не применяется к клипам, выполняемым на локальном диске. (Это ограничение идентично правилам безопасности для loadVariables, XML.sendAndLoad и XML.load.) |
Список методов для объекта XMLSocket
close
Синтаксис
new XMLSocket();
Аргументы
Нет.
Описание
Конструктор; создает новый объект XMLSocket. Объект XMLSocket первоначально не связан ни с каким сервером. Вы должны вызвать метод XMLSocket.connect, чтобы связать объект с сервером.
Player
Flash 5 или выше.
Пример
myXMLSocket = new XMLSocket();
Смотрите также
XMLSocket.connect