Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 02.06.2013, 16:28
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 1  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Question Сохранение картинок в альбом из iFrame флеш приложения

Парни, как можно загрузить картинку в альбом в контакте если флешка встроена в айфрейм? Постоянно вылетает нарушение изолированной среды, когда ответ приходит. Если флешка просто залита в контакт, все норм работает и сохраняется.
Самая тупость в том, что URL запросы к конакту работают нормально, если к ним не прикреплять байтмассив с изображением, и текстовые данные приходят. Получается что даже картинка отправляется, но когда приходит JSON объект с данными для сохранения server, hash, aid то вылетает ошибка.
Как это проксировать через свой сервер тоже ума не приложу. Уже всю голову сломал.
У кого-нибудь есть рабочий вариант подобных манипуляций?

п.с. Сейчас код вот такой:
Код AS3:
		private static function uploadVkPhoto():void {
 
			var imageStream:ByteArray = PNGEncoder.encode(_image.bitmapData);
 
			var stream:ByteArray = new ByteArray();
			var delimeter:String = "----------Ij5ae0ae0KM7GI3KM7";
			var imageName:String	= MD5.encrypt(getTimer() + "") + ".png";
			stream.writeUTFBytes("--" + delimeter + '\r\nContent-Disposition: form-data; name="file1"; filename="' + imageName + '"\r\nContent-Type: image/png\r\n\r\n');
			stream.writeBytes(imageStream);
			stream.writeUTFBytes("\r\n--" + delimeter + '--\r\n');
 
			var header:URLRequestHeader = new URLRequestHeader ("Content-type", "multipart/form-data; boundary=" + delimeter);
			var urlRequest:URLRequest = new URLRequest(_vkUploadServer);
			urlRequest.requestHeaders.push(header);
			urlRequest.method = URLRequestMethod.POST;
			urlRequest.data = stream;
 
			var urlLoader:URLLoader = new URLLoader();
			urlLoader.dataFormat = URLLoaderDataFormat.TEXT;
			urlLoader.addEventListener( Event.COMPLETE, onVkPhotoUploaded );
			urlLoader.addEventListener( IOErrorEvent.IO_ERROR, photoUploadError );
			try {
				urlLoader.load( urlRequest );
			} catch (e:Error) {
				trace(e.getStackTrace());
			}
 
		}
 
		private static function onVkPhotoUploaded(e:Event):void {
 
			e.target.addEventListener( Event.COMPLETE, onVkPhotoUploaded );
			e.target.addEventListener( IOErrorEvent.IO_ERROR, photoUploadError );
			var responce:	Object 	= Json.decode(unescape(String(e.target.data)));
			var server:		String 	= responce.server;
			var hash:		String 	= responce.hash;
			var photosList:	String 	= responce.photos_list;
			var aid:		String 	= responce.aid;
			_vk.api("photos.save", { photos_list: photosList, aid: aid, hash: hash, server: server }, 
				onVkPhotoSaved, onVkError );
		}
Он рабочий. Но только если флешка не на другом домене.

Создать новую тему   Часовой пояс GMT +4, время: 00:42.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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