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

Вернуться   Форум Flasher.ru > Flash > Flash Приложения: AIR, Zinc и тд.

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

Регистрация: Sep 2009
Сообщений: 4
По умолчанию AIR. Отправка файла на сервер требующий авторизации

Доброго времени суток,
столкнулся со следующий проблемой:
Необходимо из AIR приложения выгружать на сервер файлы, для выгрузки использую класс FileReference, на сервер сначало нужно зайти под своим именем, это сделать не сложно пример функции Login() приведен ниже, проблема в том что кукисы как я понял хранятся в экземляре объекта URLLoader, поэтому экземпляр класса FileReference не может отослать файл, т.к. он не передает кукисы серверу и тот отказывает в доступе. Как можно решить эту задачу?


Для входа использую слудующую функцию:

Код AS3:
public function Login():void
		{
			var request:URLRequest=new URLRequest("http://mysite.com/admin/code/index.php");
			var param:URLVariables=new URLVariables();
			param.xuser_name="admin";
			param.xuser_password="useradmin";
			param.logaction="login";
			request.data=param;
			request.method=URLRequestMethod.POST;
			var loader:URLLoader=new URLLoader();
			loader.addEventListener(Event.COMPLETE,onLogin);
			try
			{
				loader.load(request);
			} catch (err:IOError)
			{
				trace("Ошибка запроса\n"+err.message);
			}		
 
			this.Loader=loader;
		}
функция отправки файла:

Код AS3:
public function sendFile():void
		{
			var request:URLRequest=new URLRequest("http://mysite.com/admin/code/upload_user_file.php");
			request.method=URLRequestMethod.POST;
			var param:URLVariables=new URLVariables;
 
			request.data=param;
 
			File.addEventListener(Event.COMPLETE,onSend)
			try
			{		
				File.upload(request,'userfile');
			} catch (err:IOError)
			{
				trace("Ошибка при отправке Файла\n"+err.message);
 
			}
 
 
		}
Добавлено через 14 минут
Тупанул, кукисы передаются с URLRequest, надо просто юзать один общи экземпляр объекта этого класса для обоих запросов.

Хотя код еще не работает ... но думаю дело уже в другом ....

Добавлено через 23 часа 54 минуты
Цитата:
Примечание. Если ваш сервер требует проверки подлинности пользователей, только Flash-приложения, запущенные в обозревателе (то есть с использованием дополнительного модуля обозревателя или элемента управления ActiveX), могут представить пользователю диалоговое окно для ввода имени пользователя и пароля (для проверки подлинности) и только потом перейти к загрузкам. Проигрыватель Flash Player не разрешает отправку данных на сервер, требующий проверки подлинности.


Нельзя в общем делать так как я хочу

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

Теги
filereferance , urlloader , кукисы

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

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


 


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


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