Problemer med at sende noget til en socket i flash
Jeg skal sende en url fra min flash-film til en socket. Til det formål bruger jeg XMLsocket-klassen. Det volder mig dog en del problemer. Nedenfor er den kode, der connecter til socket'en, men den siger "Connection failed" hver gang. Er der nogen, der ved, om det kan være fordi, jeg sidder på en mac eller er der en fejl i koden?
function myOnConnect(success) { if (success) { trace ("Connection succeeded!") } else { trace ("Connection failed!") } }
socket = new XMLSocket(); socket.connect(null,2000); socket.onConnect = myOnConnect();
if (!socket.connect(null, 2000)) { trace ("Connection failed!") }
Til at sende url'en til socket'en har jeg tænkt mig at bruge noget i stil med: socket.send(_root.bar_a.bjaelke1.url);
Ser det helt skævt ud?
Der er 150 point på spil for jeg synes, det er ret svært, det her!
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Det er højst sandsynligt fordi i prøver at få forbindelse der ligger på en anden server end der hvor flashen ligger på... For at dette kan lade sig gøre skal i sætte noget der hedder "cross domain policy" - dette skal gøres på flere forskellige måder for at det kan virke i både flashplayer 6 og 7. Har netop været ude for samme problem:
I flash's hjælpefunktion står der i øvrigt også, at man godt kan bruge "null", hvis man vil connecte til den samme server som filen ligger på: "You can also specify null to connect to the host server on which the SWF file resides."
he he - hmm - nu er jeg lidt på glatis. Jeg ved nemlig ikke så meget om sockets. Troede egentlig bare, at man kunne skrive det i flash, og så vil det virke.... Men sådan fungerer det måske ikke helt?
Nej, det hjalp heller ikke. Jeg tror lige jeg vil prøve det af på en pc, for jeg kan simpelthen ikke se, at der skulle være noget galt med koden. Jeg vender tilbage, når jeg har fundet ud af, om det virker...
Hmm - nu har vi også fået en datalog på sagen. Han har åbnet en ip-adresse: 10.12.20.133 og porten 10000 på sin maskine, og når vi kører flash fra den med nedenstående kode, virker det stadig ikke. Skal man gøre Flash opmærksom på, at man skal sende noget til andre programmer - og er XMLsocket indrettet sådan, at man skal sende det til en xml-socket-server (vores er nemlig en alm socket server)??
function myOnConnect(success) { if (success) { trace ("Connection succeeded!") } else { trace ("Connection failed!") } } socket = new XMLSocket(); socket.onConnect = myOnConnect(); if (!socket.connect("10.12.20.133", 10000)) { trace ("Connection failed!") }
Jeg håber, der er nogen, der kan hjælpe os lidt på vej.
xml er kun den måde hvorpå dataene skal overføres... men når du connecter sender du ikke nogen data! Jeg har en java server socket, som du godt må til at teste med - den virker i hver fald på min pc! Den er fra moock.org - men jeg kan sgu ikke finde den igen.
Hvis du vil have den til at teste med kan du bare skrive din mail adresse her.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.