Проблема безопасности при попытке загрузить образ с диска сервера в Actionscript 3.0 - PullRequest
1 голос
/ 30 ноября 2010

Я столкнулся с ошибкой # 2148 (это безопасность), когда я пытался загрузить файл изображения.

1. Если я загружаю SWF-файл в local , изображение извлекается и отображается правильно.

2.Но если я опубликую файл swf в своем веб-проекте и запустите его в localhost , это выдаст мне # 2148 ошибку безопасности

3. Если я использую http://xx.xx/ticketstub.png в функции loadImage (), она работает как в 1 , так и в 2 ;Проблема теперь в том, что когда я использую C: /jbdevstudio/uploads/ticketdesign/ticketstub.png, он не работает на веб-сервере.Я погуглил эту проблему в течение нескольких дней и пробовал все решения, которые нашел, но все же не повезло.

Спасибо!

Коды ActionScript:

//http://xx.xx/ticketstub.png works in both 1 and 2
loadImage("C:/jbdevstudio/uploads/ticketdesign/ticketstub.png");


function loadImage(url:String):void {
try{
 // Set properties on my Loader object
 imageLoader = new Loader();
 imageLoader.load(new URLRequest(url));
 imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading);
 imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
}catch(error:Error){
    ExternalInterface.call("er", error.toString()); 
}
}


function imageLoaded(e:Event):void {
try{
 // Load Image
 imageHolder.addChild(imageLoader);
 imageHolder.width = imageHolder.width / 3.5;
 imageHolder.height = imageHolder.height / 3.5;
}catch(error:Error){        
    ExternalInterface.call("er", error.toString()); 
}

1 Ответ

1 голос
/ 30 ноября 2010

Вы не можете загрузить изображение из локальной файловой системы во Flash, как это.

Изображения могут быть загружены с веб-URL.Если они приходят из другого домена в SWF, вы можете только отображать их, а не обрабатывать.Однако с дополнительной поддержкой безопасности (proxy или crossdomain.xml) вы можете загружать изображения из другого домена и обрабатывать их по мере необходимости.

Третий вариант - загрузить изображение, предоставленное пользователем через FileReference класс, однако, пользователь выбирает файл, SWF не может выбрать его напрямую.Эти файлы могут быть обработаны любым способом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...