03.07.2013 Views

Guide de reference du langage ActionScript 2.0 - PowWeb

Guide de reference du langage ActionScript 2.0 - PowWeb

Guide de reference du langage ActionScript 2.0 - PowWeb

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Version 8. Deux gran<strong>de</strong>s zones <strong>de</strong> modification :<br />

■ L'appel <strong>de</strong> System.security.allowDomain() autorise désormais uniquement les<br />

opérations <strong>de</strong> programmation croisée où le fichier SWF cible correspond au fichier SWF<br />

qui a appelé System.security.allowDomain(). En d'autres termes, tout fichier SWF<br />

qui appelle désormais System.security.allowDomain() n'autorise que l'accès à luimême.<br />

Dans <strong>de</strong>s versions précé<strong>de</strong>ntes, l'appel <strong>de</strong> System.security.allowDomain()<br />

autorisait les opérations <strong>de</strong> programmation croisée lorsque le fichier SWF cible<br />

appartenait au même domaine que le fichier SWF qui a appelé<br />

System.security.allowDomain(). L'appel <strong>de</strong> System.security.allowDomain()<br />

ouvrait auparavant l'ensemble <strong>du</strong> domaine <strong>du</strong> fichier SWF ayant procédé à l'appel.<br />

■ Une prise en charge a été ajoutée pour les valeurs <strong>de</strong>s caractères génériques avec<br />

System.security.allowDomain("*") et<br />

System.security.allowInsecureDomain("*"). La valeur caractère générique (*)<br />

autorise les opérations <strong>de</strong> programmation croisée quel que soit le fichier procédant à<br />

l'accès et quelle que soit l'origine <strong>de</strong> ce <strong>de</strong>rnier. Le caractère générique sert alors<br />

d'autorisation globale. Les autorisations par caractère générique peuvent être utiles <strong>de</strong><br />

façon générale et elles sont en particulier requises pour activer certains types d'opération<br />

conformément aux nouvelles règles <strong>de</strong> sécurité <strong>de</strong>s fichiers locaux <strong>de</strong> Flash Player 8. Plus<br />

précisément, pour qu'un fichier SWF local avec <strong>de</strong>s autorisations d'accès au réseau puisse<br />

programmer un fichier SWF sur Internet, le fichier cible doit appeler<br />

System.security.allowDomain("*"), ce qui tient compte <strong>du</strong> fait que l'origine <strong>du</strong><br />

fichier SWF local est inconnue. (Si le fichier SWF Internet cible est chargé à partir d'une<br />

URL HTTPS, le fichier SWF Internet doit alors appeler<br />

System.security.allowInsecureDomain("*").)<br />

La situation suivante risque parfois <strong>de</strong> se présenter : Vous chargez un fichier SWF enfant à<br />

partir d'un domaine différent et souhaitez lui permettre <strong>de</strong> créer un script sur le fichier SWF<br />

parent, mais vous ne connaissez pas le domaine final à partir <strong>du</strong>quel sera issu le fichier SWF<br />

enfant. Cela peut se pro<strong>du</strong>ire, par exemple, lorsque vous utilisez <strong>de</strong>s redirections d'équilibrage<br />

<strong>de</strong> charge ou <strong>de</strong>s serveurs tiers.<br />

Dans ce cas, vous pouvez utiliser la propriété MovieClip._url comme paramètre <strong>de</strong> cette<br />

métho<strong>de</strong>. Par exemple, si vous chargez un fichier SWF dans le clip my_mc, vous pouvez<br />

appeler System.security.allowDomain(my_mc._url). Si vous procé<strong>de</strong>z ainsi, veuillez<br />

patienter jusqu'au début <strong>du</strong> chargement <strong>du</strong> fichier SWF dans my_mc car la propriété _url ne<br />

dispose pas <strong>de</strong> sa valeur correcte et finale qu'à ce moment là. La meilleure façon <strong>de</strong> déterminer<br />

si le chargement d'un fichier SWF enfant a commencé est d'utiliser<br />

MovieClipLoa<strong>de</strong>r.onLoadStart.<br />

1096 Chapitre 2: Classes <strong>ActionScript</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!