Question

Je suis en train de charger Gravatars dans Flash. Heureusement, ils ont fourni un fichier crossdomain.xml à http://en.gravatar.com/avatar/crossdomain.xml

Mon code:

Security.loadPolicyFile("http://en.gravatar.com/avatar/crossdomain.xml");
var loader:Loader = new Loader();
loader.load(new URLRequest("http://en.gravatar.com/avatar/" + gravatar + "?s=35&d=identicon"));

Mais je suis toujours à obtenir cette erreur:

  

SecurityError: Erreur # 2123: Violation du sandbox de sécurité: LoaderInfo.content: [...] ne peut pas accéder http://en.gravatar.com/avatar/97fbce86a5bbc520450168603172cd9e?s=35&d=identicon . Aucun politiques d'accès accordés.
  à flash.display :: LoaderInfo / get contenu ()
  à PiecePlayerSmall / onLoadComplete ()

J'ai également surveillé le trafic le fichier Flash envoie. Il est demandé:

Toutes les suggestions pour obtenir ceci pour travailler et réduire le nombre de demandes de gravatar.com.

EDIT: Le code suivant fonctionne, grâce à Jacob

Security.loadPolicyFile("http://en.gravatar.com/avatar/crossdomain.xml");
var context:LoaderContext = new LoaderContext();
context.checkPolicyFile = true;
context.applicationDomain = ApplicationDomain.currentDomain;
var request:URLRequest = new URLRequest(
    "http://en.gravatar.com/avatar/" + gravatar + "?s=35&d=identicon");
var loader:Loader = new Loader();
loader.load(request, context);
this.addChild(loader);

Note: Ne pas essayer d'accéder au contenu directement dans le Event.COMPLETE

Était-ce utile?

La solution

Je suis autour d'un problème similaire en utilisant un LoaderContext . Voici un exemple de comment faire ceci:

var context:LoaderContext = new LoaderContext();
context.checkPolicyFile = true;
context.securityDomain = SecurityDomain.currentDomain;
context.applicationDomain = ApplicationDomain.currentDomain;
var request:URLRequest = new URLRequest(
    "http://en.gravatar.com/avatar/" + gravatar + "?s=35&d=identicon");
var loader:Loader = new Loader();
loader.load(request, context);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top