Загрузка внешних изображений из другого домена - PullRequest
3 голосов
/ 19 января 2010

Можно ли загрузить изображение (jpg, png, gif) из другого домена и манипулировать пикселями? Я предполагаю, что когда изображение загружено / скопировано, оно находится в моем домене.

Используя Loader и добавляя содержимое в компонент Image, я получаю сообщение об ошибке в моем отладчике. Я предполагаю, что здесь есть несколько междоменных политик.

Но мне нужно быть более уверенным, как это работает, прежде чем двигаться дальше. Я думаю, что если невозможно загрузить изображение напрямую, я мог бы создать локальный прокси.

Может ли кто-нибудь, пожалуйста, просветить меня?

Заранее спасибо.

Ответы [ 2 ]

7 голосов
/ 19 января 2010

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

Вот фрагмент:

var loaderContext:LoaderContext = new LoaderContext(true);
var loader:Loader = new Loader();
loader.load(new URLRequest('http://someserver.com/yourImage.jpg'),loaderContext);

В противном случае вам может понадобиться использовать какой-нибудь язык на стороне сервера, чтобы загрузить изображение и написать его на своем домене.После этого вы сможете выполнять все необходимые манипуляции.

Goodluck, George

1 голос
/ 20 января 2010

Если на сервере нет междоменного файла, вы можете создать php-файл, который использует CURL для захвата любого изображения и отправки его в ваш флэш-файл.Таким образом, Flash думает, что это с сервера.Не самый эффективный процесс, но работает.

...