Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   allowDomain(), loadPolicyFile() несколько вопросов о их использовании (http://www.flasher.ru/forum/showthread.php?t=75633)

__i 16.02.2006 18:45

allowDomain(), loadPolicyFile() несколько вопросов о их использовании
 
Вобщем че-то я окончательно запутался с ними. И хотелось бы все разложить по полочкам.

Мои мысли по поводу их работы (Исправте где я не верно говорю):

Функция allowDomain позволяет нам загружать контент (swf, видео, картинки) с доменов указаных в ней.
Ситуация: У нас постепенно приходят данные о нашем контенте, который лежит где попало (разные домены). Мы можем вызывать
Код:

System.security.allowDomain("домен1");
.....
System.security.allowDomain("домен2");
....
System.security.allowDomain("доменN");
.....

или нужно вызвать это все сразу
Код:

System.security.allowDomain("домен1","домен2",...,"доменN");
????
____________________________________

Теперь вопрос по loadPolicyFile().

Если я желаю грузить данные (XML, LoadVars) с datadomain.com, а флешка запущена с flashdomain.com, то я должен файл crossdomain.xml положить на datadomain.com? привильно я понял ? а в нем я должен написать:

....loadPolicyFile("http://datadomain.com/polisy/crossdomain.xml");
Код:

<cross-domain-policy>
  <allow-access-from domain="datadomain.com" />
  <allow-access-from domain="*.datadomain.com"/>
..........................
</cross-domain-policy>

И если я загружу этот файл с flashdomain.com с таким содержимым та флешка нифига не возмет с datadomain.com.

olegn 16.02.2006 20:46

Цитата:

или нужно вызвать это все сразу
В документации указан твой второй вариант
Код:

System.security.allowDomain("домен1","домен2",...,"доменN");
Далее.
Цитата:

Если я желаю грузить данные (XML, LoadVars) с datadomain.com, а флешка запущена с flashdomain.com, то я должен файл crossdomain.xml положить на datadomain.com? привильно я понял ? а в нем я должен написать:

....loadPolicyFile("http://datadomain.com/polisy/crossdomain.xml");

Код:

<cross-domain-policy>
<allow-access-from domain="datadomain.com" />
<allow-access-from domain="*.datadomain.com"/>
..........................
</cross-domain-policy>

И если я загружу этот файл с flashdomain.com с таким содержимым та флешка нифига не возмет с datadomain.com.
1. crossdomain должен находиться на datadomain.com в твоем случае, ...
2. ... но loadPolicyFile нужно использовать, если crossdomain расположен не в корневой директории, а в какой-то другой. В твоем примере применение loadPolicyFile подразумевает, что crossdomain должен лежать в директории /polisy Можно просто положить crossdomain в корень, и Flash Player по умолчанию там его будет искать.
3. В твоем случае crossdomain выглядит примерно так (подробнее см. документацию)
Код:

<cross-domain-policy>
  <allow-access-from domain="flashdomain.com" />
  <allow-access-from domain="*.flashdomain.com"/>
</cross-domain-policy>

То есть в этом файле ты пишешь список доменов, ИЗ КОТОРЫХ разрешен доступ к твоим данным на datadomain.com

__i 16.02.2006 21:06

Спасибо!, теперь разобрался !

flash33 26.04.2006 21:42

Если домен чужой, как я там смогу прописать crossdomain.xml?

KUZEN 26.04.2006 21:56

Цитата:

Сообщение от flash33
Если домен чужой, как я там смогу прописать crossdomain.xml?

Какой хитрый ))) Это для того и сделано что бы ты не воровал не своё ))) Если есть доступ прописывай и пользуйся, если нет то ...

etc 27.04.2006 00:36

allowDomain разрешает обращаться мувикам с указанных в функции доменов к мувику, в котором прописана эта строка, а не наоборот, как считают многие.
crossdomain.xml может быть размещён только владельцем удалённого сайта (случаи взлома в расчёт не берём)


Часовой пояс GMT +4, время: 14:15.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.