XML-kontakt

XMLSocket er en protokoll implementert av ActionScript- språket som gjør det mulig for en Adobe Flash-film å kommunisere over TCP gjennom Sockets . Det tillater overføring av rå tekstdata (tekst) eller hierarkisk ( XML , xHTML ). Den brukes ofte i chat- applikasjoner og flerspillerspill .

Protokollen er som følger:

Flash-klient

Flash var den første teknologien som tilbød XMLSocket-protokollen på klientsiden.

ActionScript 2.0

Koden for å vise en Hello world i ActionScript 2.0 er som følger:

Stikkontakten bruker port 8463 på den lokale maskinen og ekkomodus er aktiv.

var xmlSocket:XMLSocket = new XMLSocket(); xmlSocket.onConnect = function () { xmlSocket.send(new XML("<message><text>Hello, World!</text></message>")); }; xmlSocket.onXML = function (myXML) { trace(myXML.firstChild.childNodes[2].firstChild.nodeValue); xmlSocket.close(); }; xmlSocket.connect("localhost", 8463);

ActionScript 3.0

Nedenfor er et eksempel på en xmlSocket-tilkobling i ActionScript 3.0:

var xml_s = new XMLSocket(); xml_s.connect(ip, port); xml_s.addEventListener(Event.CONNECT, xmlsocket); xml_s.addEventListener(Event.CLOSE, xmlsocket); xml_s.addEventListener(IOErrorEvent.IO_ERROR, xmlsocket); function xmlsocket(Event):void { switch (Event.type) { case 'ioError' : // Unable to Connect break; case 'connect' : // Connected break; case 'close' : // OnDisconnect break; } }

Silverlight-klient

Silverlight støtter bruken av stikkontakter i navneområdet System.Net.Sockets. Protokollen er asynkron og bruker porten 4502 til 4534. Kommunikasjon kan finne sted mellom en klient og flere servere ( tvers av domener ) forutsatt at en fil definerer sikkerhetsreglene på den primære serveren.

Silverlight 1.1 og 2.0

Silverlight bruker et XML- basert format for å kontrollere tilgang til ressurser fra proxy-domener. I tillegg støtter Silverlight også Adobe Flash- formatet som regulerer tilgang mellom domener. Silverlight 2 fra beta 1 legger også til støtte for nettverkskommunikasjon ved hjelp av stikkontakter gjennom IPv4 og IPv6 . Silverlight 2.0 støtter også asynkron programmering, ved bruk av " threading  " -biblioteker  . Imidlertid er Silverlight-stikkontakter mer restriktive. De kan bare kommunisere med verten som opprinnelig lansert programmet, og portnumrene er begrenset fra 4502 til 4532. Fremtidige utgivelser vil løse dette problemet. Silverlight-kontakter kan bare starte en tilkobling, de kan ikke være på vent.

Se også

Relaterte artikler

Eksterne linker