Ho trovato molti post simili qui, ma nessuno sembra affrontare il problema esatto che sto avendo.as3 XMLSocket che non richiede il file di politica
Sto solo cercando di connettere un XMLSocket al mio server, e circa 10 secondi dopo il tentativo di connessione, ottengo un SecurityErrorEvent: Errore # 2048: violazione della sicurezza sandbox (dati cannotload da ##. ##. ## . ##: 9024).
Lato server, ho uno script php che ascolta la porta 9024. Sono abbastanza sicuro che funzioni correttamente, perché posso connettermi ad esso usando altri script php. Inoltre, quando il mio php sul lato client effettua la richiesta del file di criteri, lo script del mio server restituisce la politica. Ecco l'AS3:
private var sock:XMLSocket = new XMLSocket();
// in my connection method
Security.allowDomain("domain.com");
Security.loadPolicyFile("dubDomain.domain.com/crossdomain.xml");
Security.loadPolicyFile("xmlsocket://domain.com:9024");
sock.connect("11.11.11.11", 9024);
ho impostato ascoltatori alla presa in AS3 prima di chiamare sock.connect, ma penso che tutto ciò che va male accada prima che potessero essere innescati.
La mia comprensione è che in entrambi i Security.loadPolicyFile secondo, o il socket.connect dovrebbe tentare di connettersi al server al socket 9024 e richiedere un file di politica. Credo che sock.connect invii solo la richiesta dopo che non è riuscita a ottenere una risposta dalla porta 843.
Sul server, tuttavia, non viene mostrato alcun tentativo di connessione. Ho provato questo dal IDE (FlashDevelop), e dal swf quando caricato sul server.
Proverei sulla porta 843, ma non ho diritti di amministratore sul mio server. Se è importante, qui è un po 'dello script php:
$client = socket_accept($sock);
if (socket_getpeername($client, $address, $theirport))
{
echo "Client $address: $theirport is now connected to us\n";
}
$input = socket_read($client, 1024000);
echo "[client] $input";
$ calzino sembra essere impostato bene, come posso collegare utilizzando un altro script php, ma aspetta solo per sempre quando provo a connettermi con AS3 .
Qualche suggerimento? Sto fraintendendo qualcosa? Grazie in anticipo.
Grazie per l'aiuto, ma sfortunatamente, non funziona ancora. Ecco cosa ho in flash: Security.allowInsecureDomain (ip); \t \t \t Security.allowDomain (ip); \t \t \t Security.loadPolicyFile (ip + "/ crossdomain.xml "); \t \t \t sock.connect (ip, 9024); ip =" dominio.com "; Tutto è ora connesso al dominio, piuttosto che al sottodominio. – Tyler
Ho controllato il registro sul mio server, e sembra come il file crossdomain.xml è stato prelevato, ma sto ancora ricevendo lo stesso problema. Ecco crossdomain.xml: xml version = "1.0"?> criterio-tra-dominio> –
Tyler