XMLSocket class
Availability
Flash Player 5.
Description
The XMLSocket class implements client sockets that let the computer running Flash Player
communicate with a server computer identified by an IP address or domain name. The
XMLSocket class is useful for client-server applications that require low latency, such as real-time
chat systems. A traditional HTTP-based chat solution frequently polls the server and downloads
new messages using an HTTP request. In contrast, an XMLSocket chat solution maintains an
open connection to the server, which lets the server immediately send incoming messages without
a request from the client.
To use the XMLSocket class, the server computer must run a daemon that understands the
protocol used by the XMLSocket class. The protocol is described in the following list:
•
XML messages are sent over a full-duplex TCP/IP stream socket connection.
•
Each XML message is a complete XML document, terminated by a zero (0) byte.
•
An unlimited number of XML messages can be sent and received over a single
XMLSocket connection.
The following restrictions apply to how and where an XMLSocket object can connect to
the server:
•
The
XMLSocket.connect()
equal to 1024. One consequence of this restriction is that the server daemons that
communicate with the XMLSocket object must also be assigned to port numbers greater than
or equal to 1024. Port numbers below 1024 are often used by system services such as FTP,
Telnet, and HTTP, so XMLSocket objects are barred from these ports for security reasons. The
port number restriction limits the possibility that these resources will be inappropriately
accessed and abused.
•
The
XMLSocket.connect()
where the SWF file resides. This restriction does not apply to SWF files running off a local
disk. (This restriction is identical to the security rules for
.) To connect to a server daemon running in a domain other than the one where
XML.load()
the SWF resides, you can create a security policy file on the server that allows access from
specific domains. For more information, see "Applying Flex Security" in Developing Flex
Applications.
Setting up a server to communicate with the XMLSocket object can be challenging. If your
application does not require real-time interactivity, use Flash HTTP-based XML server
connectivity (
XML.load()
To use the methods of the XMLSocket class, you must first use the constructor,
to create an XMLSocket object.
482
Chapter 6: ActionScript Core Classes
method can connect only to TCP port numbers greater than or
method can connect only to computers in the same domain
,
XML.sendAndLoad()
ActionScript Core Classes
XML.sendAndLoad()
,
), instead of the XMLSocket class.
XML.send()
CHAPTER 6
, and
,
new XMLSocket
Need help?
Do you have a question about the FLEX-FLEX ACTIONSCRIPT LANGUAGE and is the answer not in the manual?