Problem wgrywania pliku *.XML we flashu
Zapewne zauważyliście że pracując na plikach XML we flashu nie ma problemu z ich wgrywaniem i odczytywaniem. Kłopoty zaczynają się gdy chcemy uruchomić ten sam skrypt z poziomu flash player’a.
Co jest tego przyczyną?
Zezwolenia i udostępnienie tego pliku. Mianowicie dla aplikacji lokalnych (odpalanych z dysku) nie ma problemu lub też gdy plik XML znajdzi się pod tą samą domeną co plik SWF, natomiast gdy umieścimy te dwa pliki pod zupełnie innymi domenami do gry wchodzi plik crossdomain.xml.
Dla wyjaśnienia TechNote:
For security reasons, a Macromedia Flash movie playing in a web browser is not allowed to access data that resides outside the exact web domain from which the SWF originated. As an enhancement to Macromedia Flash Player 7, domains must be identical for data to be read. With this change a sub-domain can no longer read data from a parent domain and vice versa…
Tak więc co trzeba w skrócie zrobić?
Stworzyć plik crossdomain.xml z zawartymi w nim dopuszczonymi domenami które będą mogły skorzystać z plików xml.
<?xml version="1.0"?> <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"> <cross-domain-policy> <allow-access-from domain="*.domena1.com"/> <allow-access-from domain="*.domena2.com"/> </cross-domain-policy>
Jak wiadomo * odpowiada za dowolny ciąg znaków.
Uwaga! Umieszczając samą ‘*’ w wartości domain zezwalamy wszystkim domeną na korzystanie z plików XML.
Podziękowania dla Nabu.
17 czerwiec 2008
02:11
3 Komentarzy
Tagi:
Kategorie: ActionScript 2.0, ActionScript 3.0, Bez Kategorii, Flash CS3, Tutoriale, WordPress, XML






Marek , 7 lipiec 2008; 17:10
Witam,
Wlasnie mam ten problem, ktory opisujesz. Nie wiem zabardzo gdzie dodac ten kawalek kodu z domenami? Dodaje go do xml tam gdzie amm wszsytkoe dane do wczytania ? czy tez robie osobny ,ktore laduje ? Moglbys mi rozjasnic problem ? A najlepiej wytlumaczyc jak to sie powinno zrobic ?
Z gory bardzo dziekuje
pozrawiam
MN
kurak , 7 lipiec 2008; 17:59
Marek: Chodzi o to że zawartość pliku XML ma wyglądać dokładnie tak jak powyżej lecz z własnymi donemami oczywiście ;)
Plik wrzucasz do katalog do którego odwołuje się domena, powiedzmy jeżeli plik XML znajduje się w pod adresem “http://demo.mojadomena.pl/plikixml/” to plik crossdomain.xml musisz umieścić w folderze do którego odnosi się “http://demo.mojadomena.pl” jeżeli wciąż nie działa to pisz ;)
Marek , 7 lipiec 2008; 20:28
Dzieki wielkie robilem podobnie :) ale cos nie dzialo wczenisje :) pozdrawiam