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

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

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

Регистрация: Feb 2009
Сообщений: 34
По умолчанию POST-запрос с полем 'photo'

2. Приложение формирует POST-запрос на полученный адрес.
Запрос должен содержать поле photo, которое содержит файл с изображением (JPG, PNG, BMP или GIF).


Поясните пожалуйста, что такое "поле"?
Я получил ByteArray картинки, которую хочу отправить. Как мне это сделать?

Так?

Код AS3:
var jpg_binary:ByteArray = encoded_jpg.encode(bmd);
var req:URLRequest = new URLRequest(upload_url);
req.method = URLRequestMethod.POST;
req.data = jpg_binary;
req.requestHeaders.push(new URLRequestHeader('Cache-Control', 'no-cache'));
 
var loader:URLLoader = new URLLoader();
loader.load(req);
loader.addEventListener(Event.COMPLETE, Complete);
Спасибо!

Старый 15.03.2010, 18:42
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 2  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Посмотри в этой группе http://vkontakte.ru/club13587210. Есть класс для загрузки фото. Правда там несколько небольших недоработок есть.
Если есть желание самостоятельно разобраться, то читай http://tools.ietf.org/html/rfc1867
И хелп по FileReference (в начале будет пример запроса).

Старый 15.03.2010, 19:00
Vogd вне форума Посмотреть профиль Отправить личное сообщение для Vogd Найти все сообщения от Vogd
  № 3  
Ответить с цитированием
Vogd

Регистрация: Feb 2009
Сообщений: 34
Как я понял, FileReference умеет грузить файл по ссылке или открывать окошко для выбора файла. А как в него запихнуть уже загруженный файл в виде ByteArray?

Это возможно? Если да, то пойду читать хелпы.

Старый 15.03.2010, 19:40
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 4  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Я не про то, что файлреференсом грузить (им только локальный файл загрузить можно). А про то, что там пример запроса вначале идет.

Старый 15.03.2010, 21:13
ratin вне форума Посмотреть профиль Отправить личное сообщение для ratin Найти все сообщения от ratin
  № 5  
Ответить с цитированием
ratin
 
Аватар для ratin

Регистрация: Sep 2009
Сообщений: 127
Вы знаете, как составляются формы в HTML?

Старый 16.03.2010, 11:31
Vogd вне форума Посмотреть профиль Отправить личное сообщение для Vogd Найти все сообщения от Vogd
  № 6  
Ответить с цитированием
Vogd

Регистрация: Feb 2009
Сообщений: 34
udaaff,

В хелпе по FileReference вот такой пример запроса:

PHP код:
POST /handler.cfm HTTP/1.1 
  Accept
text/*
  Content-Type: multipart/form-data; 
  boundary=----------Ij5ae0ae0KM7GI3KM7ei4cH2ei4gL6 
  User-Agent: Shockwave Flash 
  Host: [url]www.example.com[/url] 
  Content-Length: 421 
  Connection: Keep-Alive 
  Cache-Control: no-cache
  
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="Filename"
  
  MyFile.jpg
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="photo"; filename="MyFile.jpg"
  Content-Type: application/octet-stream
  
  FileDataHere
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="Upload"
  
  Submit Query
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7-- 
И я не понимаю, как из этого мне подчерпнуть информацию по поводу добавления к запросу "поля" с фотографией.

в этой группе http://vkontakte.ru/club13587210 все действия опять же происходят с помощью FileReference.

Я по прежнему не понимаю, как к запросу присоединить "поле" photo с фотографией.

Старый 16.03.2010, 12:24
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 7  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Класс PhotoLoader смотрите.

Старый 16.03.2010, 15:27
Vogd вне форума Посмотреть профиль Отправить личное сообщение для Vogd Найти все сообщения от Vogd
  № 8  
Ответить с цитированием
Vogd

Регистрация: Feb 2009
Сообщений: 34
Класс PhotoLoader загружает картинки в альбом. А мне нужно на стенку((

Старый 16.03.2010, 15:39
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 9  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Вообще есть и на стенку. Просто там старая версия Сделайте по аналогии, или подождите день другой пока зальется новая.

Старый 16.03.2010, 17:04
Vogd вне форума Посмотреть профиль Отправить личное сообщение для Vogd Найти все сообщения от Vogd
  № 10  
Ответить с цитированием
Vogd

Регистрация: Feb 2009
Сообщений: 34
udaaff, это вы автор того Апи?
Сделал по аналогии запрос на загрузку фотографии. И оно даже работает!

Но, если залить флешку в контакт, то перестает выполняться запрос. И ни один из эвентов не срабатывает. Что это может быть?

Код AS3:
var jpg_binary:ByteArray = encoded_jpg.encode(bmd);
 
var mdata:MultipartData = new MultipartData();
 
var urlRequest = new URLRequest(data.upload_url);
urlRequest.method = URLRequestMethod.POST;
urlRequest.contentType = "multipart/form-data; boundary=" + MultipartData.BOUNDARY; 
mdata.addFile(jpg_binary, "photo");
 
urlRequest.data = mdata.data;
var urlLoader:URLLoader = new URLLoader();
urlLoader.addEventListener(Event.COMPLETE, urlLoader_completeHandler);
urlLoader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
urlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
urlLoader.addEventListener(Event.OPEN, openHandler);
urlLoader.addEventListener(ProgressEvent.PROGRESS, progressHandler);
urlLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
 
urlLoader.load(urlRequest);

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

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

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


 


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


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