Справочник по ActionScript® 3.0 для платформы Adobe® Flash®
Домашняя страница  |  Скрыть список пакетов и классов |  Пакеты  |  Классы  |  Что нового  |  Указатель  |  Приложения  |  Почему по-английски?
Фильтры: Получение данных с сервера...
Получение данных с сервера...
flash.net 

URLLoader  - AS3

Пакетflash.net
Классpublic class URLLoader
НаследованиеURLLoader Inheritance EventDispatcher Inheritance Object
Подклассы AVURLLoader

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Класс URLLoader загружает данные с URL-адреса в виде текста, двоичных данных или переменных в кодировке URL. Данная функция целесообразна при загрузке текстовых файлов, XML-объектов или других сведений, которые будут использованы в динамическом приложении по обработке данных.

Объект URLLoader загружает все данные с URL-адреса, прежде чем сделать их доступными для кода в приложениях. Он отправляет оповещения о состоянии загрузки, которые можно отслеживать с помощью свойств bytesLoaded и bytesTotal, а также посредством отправленных событий.

При загрузке очень больших видеофайлов, таких как FLV, могут возникнуть ошибки из-за нехватки памяти.

При использовании данного класса в содержимом проигрывателяFlash Player и приложения AIR, размещенном в изолированных программных средах безопасности, отличных от среды безопасности приложения, необходимо учитывать следующую модель безопасности:

  • SWF-файл в изолированной программной среде, локальной для файловой системы, может не поддерживать загрузку и передачу данных для ресурса, находящегося в сетевой изолированной программной среде.
  • По умолчанию вызывающий SWF-файл и загружаемый URL-адрес должны находиться в одном и том же домене. Например, SWF-файл на www.adobe.com может загружать данные только из источников, которые также размещены на сайте www.adobe.com. Чтобы загрузить данные с другого домена, разместите файл политик URL-адресов на сервере, где расположены эти данные.

Дополнительные сведения о безопасности см. в разделе центра разработчиков Flash Player Безопасность.

Посмотреть примеры

Связанные элементы API



Общедоступные свойства
 СвойствоОпределено
  bytesLoaded : uint = 0
Определяет число байтов, загруженных до настоящего момента в ходе операции загрузки.
URLLoader
  bytesTotal : uint = 0
Определяет общее число байтов загруженных данных.
URLLoader
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  data : *
Данные, полученные при загрузке.
URLLoader
  dataFormat : String = "text"
Определяет, в каком виде получаются загружаемые данные: в виде текста (URLLoaderDataFormat.TEXT), необработанных двоичных данных (URLLoaderDataFormat.BINARY) или переменных в кодировке URL (URLLoaderDataFormat.VARIABLES).
URLLoader
Общедоступные методы
 МетодОпределено
  
URLLoader(request:URLRequest = null)
Создает объект URLLoader.
URLLoader
  
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
[переопределить] Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии.
URLLoader
  
Закрывает выполняемую операцию загрузки.
URLLoader
 Inherited
Посылает событие в поток событий.
EventDispatcher
 Inherited
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события.
EventDispatcher
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
  
Отправляет и загружает данные с заданного URL-адреса.
URLLoader
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Удаляет прослушиватель из объекта EventDispatcher.
EventDispatcher
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
 Inherited
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали.
Object
 Inherited
Возвращает строковое представление заданного объекта.
Object
 Inherited
Возвращает элементарное значение заданного объекта.
Object
 Inherited
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником.
EventDispatcher
События
 Событие Сводка Определено
 Inherited[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR перемещается в фокус операционной системы и становится активным.EventDispatcher
  Отправляется после декодирования всех полученных данных и размещения их в свойстве data объекта URLLoader.URLLoader
 Inherited[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR теряет фокус системы и становится неактивным.EventDispatcher
  Отправляется, если вызов метода load(), пытающийся обратиться к данным через HTTP и Adobe AIR, может обнаружить и вернуть код состояния для запроса.URLLoader
  Отправляется, если вызов метода URLLoader.load() инициирует попытку доступа к данным по протоколу HTTP.URLLoader
  Отправляется, если вызов метода URLLoader.load() приводит к неустранимой ошибке, прекращающей загрузку.URLLoader
  Отправляется, когда операция загрузки начинается после вызова метода URLLoader.load().URLLoader
  Отправляется в случае получения данных в ходе операции загрузки.URLLoader
  Отправляется, если путем вызова метода URLLoader.load() предпринимается попытка загрузить данные с сервера, расположенного за пределами изолированной среды.URLLoader
Сведения о свойстве

bytesLoaded

свойство
public var bytesLoaded:uint = 0

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Определяет число байтов, загруженных до настоящего момента в ходе операции загрузки.

bytesTotal

свойство 
public var bytesTotal:uint = 0

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Определяет общее число байтов загруженных данных. Во время операции загрузки данное свойство имеет значение 0 и заполняется по завершении операции. Вдобавок, отсутствие заголовка Content-Length не позволит определить параметр bytesTotal.

data

свойство 
public var data:*

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Данные, полученные при загрузке. Данное свойство заполняется только после завершения операции загрузки. Формат данных зависит от значения свойства dataFormat:

Если свойство dataFormat имеет значение URLLoaderDataFormat.TEXT, то в качестве данных будет получена строка, содержащая текст загруженного файла.

Если свойство dataFormat имеет значение URLLoaderDataFormat.BINARY, то в качестве данных будет получен объект ByteArray, содержащий необработанные двоичные данные.

Если свойство dataFormat имеет значение URLLoaderDataFormat.VARIABLES, то в качестве данных будет получен объект URLVariables, содержащий переменные в кодировке URL-адреса.

Связанные элементы API


Пример  ( Использование этого примера )
Следующий пример демонстрирует, как внешний текстовый файл с переменными в кодировке URL можно загрузить в документ ActionScript 3.0 с помощью класса URLLoader, задав в качестве значения свойства dataFormat константу URLLoaderDataFormat.VARIABLES (variables). Пример предоставлен ActionScriptExamples.com.
//params.txt is a local file that includes: firstName=Tom&lastName=Jones
var lbl:TextField = new TextField();
var urlRequest:URLRequest = new URLRequest("params.txt");
var urlLoader:URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
urlLoader.addEventListener(Event.COMPLETE, urlLoader_complete);
urlLoader.load(urlRequest);
 
function urlLoader_complete(evt:Event):void {
    lbl.text = urlLoader.data.lastName + "," + urlLoader.data.firstName;
    addChild(lbl);
}

dataFormat

свойство 
public var dataFormat:String = "text"

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Определяет, в каком виде получаются загружаемые данные: в виде текста (URLLoaderDataFormat.TEXT), необработанных двоичных данных (URLLoaderDataFormat.BINARY) или переменных в кодировке URL (URLLoaderDataFormat.VARIABLES).

Если свойство dataFormat имеет значение URLLoaderDataFormat.TEXT, то в качестве данных будет получена строка, содержащая текст загруженного файла.

Если свойство dataFormat имеет значение URLLoaderDataFormat.BINARY, то в качестве данных будет получен объект ByteArray, содержащий необработанные двоичные данные.

Если свойство dataFormat имеет значение URLLoaderDataFormat.VARIABLES, то в качестве данных будет получен объект URLVariables, содержащий переменные в кодировке URL-адреса.

Значением по умолчанию является URLLoaderDataFormat.TEXT.

Связанные элементы API


Пример  ( Использование этого примера )
Следующий пример демонстрирует загрузку внешних текстовых файлов. Используйте классы URLRequest и URLLoader, после чего добавьте прослушиватель для события complete. Пример предоставлен ActionScriptExamples.com.
var PATH:String = "lorem.txt";
var urlRequest:URLRequest = new URLRequest(PATH);
var urlLoader:URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.TEXT; // default
urlLoader.addEventListener(Event.COMPLETE, urlLoader_complete);
urlLoader.load(urlRequest);
 
function urlLoader_complete(evt:Event):void {
    textArea.text = urlLoader.data;
}
Сведения о конструкторе

URLLoader

()Конструктор
public function URLLoader(request:URLRequest = null)

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Создает объект URLLoader.

Параметры
request:URLRequest (default = null) — Объект URLRequest, определяющий URL-адрес для загрузки. Если данный оператор пропущен, операция загрузки не начинается. При указании такового операция загрузки начинается немедленно (дополнительные сведения см. в разделе о load).

Связанные элементы API

Сведения о методе

addEventListener

()метод
override public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. Можно регистрировать прослушиватели событий в любом узле из списка отображения для каждого типа события, фазы и приоритета.

После успешной регистрации прослушивателя событий невозможно изменить его приоритет путем дополнительных вызовов addEventListener(). Чтобы изменить приоритет прослушивателя, необходимо сначала вызвать метод removeListener(). Затем можно снова зарегистрировать прослушиватель с новым приоритетом.

Следует учесть, что после регистрации прослушивателя последующие вызовы метода addEventListener() с другим значением свойства type или useCapture приводят к регистрации другого прослушивателя. Например, прослушиватель, изначально зарегистрированный со значением useCapture, равным true, прослушивает только во время фазы захвата. Если вызвать метод addEventListener() еще раз с тем же объектом прослушивателя, но со свойством useCapture в значении false, то будет два прослушивателя: один — прослушивающий в фазе захвата, а другой — в целевой фазе и фазе восходящей цепочки.

Невозможно зарегистрировать прослушиватель события только для целевой фазы или для фазы восходящей цепочки. Эти фазы соединены при регистрации, поскольку восходящая цепочка применяется только к предшественникам целевого узла.

Если прослушиватель событий больше не нужен, его можно удалить, вызвав метод removeEventListener(), иначе могут возникнуть проблемы с памятью. Прослушиватели событий не удаляются из памяти автоматически, так как сборщик мусора не удаляет прослушиватель, пока существует объект, отправляющий соответствующее событие (если параметру useWeakReference не задано значение true).

Копирование экземпляра EventDispatcher не приводит к копированию прослушивателей событий, присоединенных к нему. (Если для вновь создаваемого узла требуется прослушиватель событий, его необходимо присоединить после создания узла.) При этом при перемещении экземпляра EventDispatcher присоединенные к нему прослушиватели событий перемещаются вместе с ним.

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

Прослушиватель событий, удаленный из узла во время обработки события на этом узле, будет запускаться текущими операциями. После удаления прослушиватель событий больше не вызывается (если не будет снова зарегистрирован для дальнейшей обработки).

Параметры

type:String — Тип события.
 
listener:Function — Функция прослушивателя, обрабатывающая событие. Эта функция должна принимать объект Event в качестве единственного параметра и не должна что-либо возвращать , как показано в примере:
function(evt:Event):void

Эта функция может иметь любое имя.

 
useCapture:Boolean (default = false)Определяет, работает ли прослушиватель в фазе захвата или в целевой фазе и в фазе восходящей цепочки. Если значение useCapture равно true, прослушиватель обрабатывает событие только во время фазы захвата, но не во время целевой фазы или фазы восходящей цепочки. Если значение useCapture равно false, то прослушиватель обрабатывает событие только в целевой фазе или фазе восходящей цепочки. Чтобы прослушивать событие во всех трех фазах, необходимо вызвать addEventListener() дважды: один раз с useCapture в значении true, а другой — с useCapture в значении false.
 
priority:int (default = 0) — Уровень приоритета прослушивателя событий. Приоритет определяется 32-разрядным целым числом со знаком. Чем больше число, тем выше приоритет. Все прослушиватели событий с приоритетом n обрабатываются перед прослушивателями с приоритетом n-1. Прослушиватели с одинаковым приоритетом обрабатываются в порядке их добавления. Значение приоритета по умолчанию равно 0.
 
useWeakReference:Boolean (default = false) — Определяет, является ли ссылка на прослушиватель «сильной» или «слабой». «Сильная» ссылка (по умолчанию) предотвращает удаление прослушивателя сборщиком мусора. «Слабая» ссылка позволяет удалить прослушиватель.

Функции элементов уровня класса не подлежат удалению в качестве мусора, вследствие чего можно установить useWeakReference равным true для функций элементов уровня класса, не подвергая их возможности подобного удаления. Если свойству useWeakReference присвоить значение true для прослушивателя, который является вложенной внутренней функцией, то функция будет очищена и перестанет быть постоянной. При создании ссылок на внутреннюю функцию (возможно сохранение в другой переменной) она не будет собираться в качестве мусора и останется устойчивой.

close

()метод 
public function close():void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Закрывает выполняемую операцию загрузки. Любая операция загрузки, выполняемая в данный момент, немедленно прекращается. Если в текущий момент нет потокового воспроизведения с URL-адреса, создается ошибка «недопустимый поток».

load

()метод 
public function load(request:URLRequest):void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Отправляет и загружает данные с заданного URL-адреса. Данные могут быть получены как текст, необработанные двоичные данные или переменные в кодировке URL. Это зависит от значения, установленного для свойства dataFormat. Обратите внимание на то, что значением свойства dataFormat по умолчанию является текст. Для отправки данных на указанный URL-адрес можно установить в объекте URLRequest свойство data.

Примечание. Если загружаемый файл содержит не-ASCII-символы (присутствующие во многих языках, кроме английского), рекомендуется сохранить файл в кодировке UTF-8 или UTF-16.

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

По умолчанию вызывающий SWF-файл и загружаемый URL-адрес должны находиться в одном и том же домене. Например, SWF-файл на www.adobe.com может загружать данные только из источников, которые также размещены на сайте www.adobe.com. Чтобы загрузить данные с другого домена, разместите файл политик URL-адресов на сервере, где расположены эти данные.

Нельзя подключаться к общепринятым зарезервированным портам. Полный список заблокированных портов см. в разделе «Ограничение API-интерфейсов сетевого подключения» в руководстве ActionScript 3.0 Developer's Guide (руководстве разработчика по ActionScript 3.0).

В приложении Flash Player 10 и более поздней версии при использовании типа содержимого multipart (например, multipart/form-data), в котором содержится загрузка (обозначена параметром filename в заголовке content-disposition в теле оператора POST), к операции POST применяются правила безопасности для загрузок:

  • Операция POST должна быть выполнена в ответ на действие, инициированное пользователем, такое как щелчок мыши или нажатие клавиши.
  • Если операция POST является междоменной (назначением операции POST не является сервер, на котором содержится SWF-файл, отправляющий запрос POST), целевой сервер должен предоставить файл политик URL, в котором разрешен междоменный доступ.

Кроме того, все объекты multipart Content-Type должны иметь допустимый синтаксис (в соответствии со стандартами RFC2046). Если синтаксис является недопустимым, к операции POST применяются правила безопасности, действующие для загрузок.

Дополнительные сведения о безопасности см. в разделе центра разработчиков Flash Player Безопасность.

Параметры

request:URLRequest — Объект URLRequest, определяющий URL-адрес для загрузки.


События
complete:Event — Отправляется после успешной загрузки данных.
 
httpStatus:HTTPStatusEvent — Если доступ осуществляется по протоколу HTTP и текущая среда Flash Player поддерживает получение кодов состояния, то можно получить эти события дополнительно к событию complete или error.
 
ioError:IOErrorEvent — Не удается завершить операцию загрузки.
 
progress:ProgressEvent — Отправляется в случае получения данных в ходе операции загрузки.
 
securityError:SecurityErrorEvent — В рамках операции загрузки была произведена попытка извлечь данные с сервера, расположенного за пределами изолированной среды вызывающего объекта. Для решения этой проблемы можно использовать файл политики на сервере.
 
securityError:SecurityErrorEvent — Операция загрузки предприняла попытку загрузить SWZ-файл (компонент платформы Adobe), но сертификат является недействительным или строка дайджеста не соответствует компоненту.
 
open:Event — Отправляется в начале операции загрузки.
 
httpResponseStatus:HTTPStatusEvent — Отправляется, если путем вызова метода load() выполняется попытка доступа к данным через HTTP, и Adobe AIR может обнаружить и вернуть код статуса для запроса.

Выдает
ArgumentError — Объекты URLRequest.requestHeader могут не содержать определенные запрещенные заголовки запроса HTTP. Дополнительные сведения см. в описании класса URLRequestHeader.
 
MemoryError — Данная ошибка может возникнуть по следующим причинам: 1) проигрыватель Flash Player или приложение AIR не могут преобразовать значение параметра URLRequest.data из UTF8 в MBCS. Данная ошибка может возникнуть, если объект URLRequest, переданный методу load(), настроен на выполнение операции GET, а параметр System.useCodePage имеет значение true. 2) Проигрыватель Flash Player или приложение AIR не могут выделить память для данных POST. Данная ошибка может возникнуть, если переданный для load объект URLRequest настроен на выполнение операции POST.
 
SecurityError — Локальные ненадежные файлы изолируются от Интернета. Чтобы обойти эту проблему, можно переклассифицировать данный файл как локальный с сетевым подключением или доверенный.
 
SecurityError — Вы пытаетесь подключиться к зарезервированному порту. Полный список заблокированных портов см. в разделе «Ограничение API-интерфейсов сетевого подключения» в руководстве ActionScript 3.0 Developer's Guide (руководстве разработчика по ActionScript 3.0).
 
TypeError — Значение параметра запроса или свойства URLRequest.url переданного объекта URLRequest равно null.

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере загружается XML-файл, а затем содержимое первых аргументов его элементов отображается в текстовом поле.

Для определения местоположения XML-файла создается объект URLRequest (например, он может находиться в том же каталоге, что и SWF-файл). Для того чтобы выявить возможные ошибки, файл загружается в блок try...catch. (Здесь выявляются ошибки SecurityError.) При возникновении события IO_ERROR вызывается метод errorHandler(), записывающий сообщение об ошибке в текстовом поле xmlTextField. После того как данные XML-файла получены и помещены в свойство данных URLLoader-объекта loader, отправляется событие Event.COMPLETE и вызывается метод loaderCompleteHandler().

В методе loaderCompleteHandler() блок try...catch используется для выявления любых ошибок анализа, которые могут возникнуть при преобразовании загруженных данных из файла в объект XML. Далее метод readNodes() рекурсивно обрабатывает все элементы в узлах XML-документа и добавляет текстовое поле xmlTextField со списком первых атрибутов всех элементов.

package {
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    import flash.xml.*;
    import flash.events.IOErrorEvent;
  
    public class URLLoader_loadExample extends Sprite {
        private var xmlTextField:TextField = new TextField();
        private var externalXML:XML;    
        private var loader:URLLoader;

        public function URLLoader_loadExample() {
            var request:URLRequest = new URLRequest("xmlFile.xml");

            loader = new URLLoader();
            
            try {
                loader.load(request);
            }
            catch (error:SecurityError)
            {
                trace("A SecurityError has occurred.");
            }

             loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
            loader.addEventListener(Event.COMPLETE, loaderCompleteHandler);

            xmlTextField.x = 10;
            xmlTextField.y = 10;
            xmlTextField.background = true;
            xmlTextField.autoSize = TextFieldAutoSize.LEFT;

            addChild(xmlTextField);
        }

        private function loaderCompleteHandler(event:Event):void {

                try {
                    externalXML = new XML(loader.data);
                    readNodes(externalXML);    
                } catch (e:TypeError) {
                    trace("Could not parse the XML file.");
                }
        }

        private function readNodes(node:XML):void {

                for each (var element:XML in node.elements()) {
                    xmlTextField.appendText(element.attributes()[0] + "\n");

                    readNodes(element);
                }    
        }

        private function errorHandler(e:IOErrorEvent):void {
            xmlTextField.text = "Had problem loading the XML File.";
        }
    }
}
Сведения о событии

complete

Событие
Тип объекта события: flash.events.Event
свойство Event.type = flash.events.Event.COMPLETE

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Отправляется после декодирования всех полученных данных и размещения их в свойстве data объекта URLLoader. Полученные данные станут доступными, как только будет отправлено это событие.

Константа Event.COMPLETE определяет значение свойства type объекта complete.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
targetСетевой объект, который завершил загрузку.

Связанные элементы API

httpResponseStatus

Событие  
Тип объекта события: flash.events.HTTPStatusEvent
свойство HTTPStatusEvent.type = flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, AIR 1.0, Flash Lite 4

Отправляется, если вызов метода load(), пытающийся обратиться к данным через HTTP и Adobe AIR, может обнаружить и вернуть код состояния для запроса.

В отличии от события httpStatus, событие httpResponseStatus доставляется до получения данных ответа. Таким образом, в событие httpResponseStatus входят значения свойств responseHeaders и responseURL (которые для события httpStatus имеют значение undefined.) Обратите внимание на то, что httpResponseStatus (при наличии такового) будет отправляться до (как дополнение) любого события complete или error.

Константа HTTPStatusEvent.HTTP_RESPONSE_STATUS определяет значение свойства type объекта события httpResponseStatus.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
responseURLURL-адрес, с которого был получен ответ.
responseHeadersЗаголовки ответа, возвращаемые в ответе, представляют собой массив объектов URLRequestHeader.
statusКод состояния HTTP, возвращенный сервером.
redirectedЯвляется ли ответ ли результатом перенаправления.
targetСетевой объект, получающий код состояния НТТР.

Связанные элементы API

httpStatus

Событие  
Тип объекта события: flash.events.HTTPStatusEvent
свойство HTTPStatusEvent.type = flash.events.HTTPStatusEvent.HTTP_STATUS

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Отправляется, если вызов метода URLLoader.load() инициирует попытку доступа к данным по протоколу HTTP. В отношении содержимого, выполняющегося в проигрывателе Flash Player, это событие отправляется, только если текущая среда Flash Player может определить и вернуть код состояния для запроса. (В некоторых браузерах данная информация не предоставляется.) Обратите внимание на то, что событие httpStatus (при наличии такового) будет отправляться до (как дополнение) любого события complete или error.

Константа HTTPStatusEvent.HTTP_STATUS определяет значение свойства type объекта события httpStatus.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
statusКод состояния HTTP, возвращенный сервером.
targetСетевой объект, получающий код состояния НТТР.

Связанные элементы API

ioError

Событие  
Тип объекта события: flash.events.IOErrorEvent
свойство IOErrorEvent.type = flash.events.IOErrorEvent.IO_ERROR

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Отправляется, если вызов метода URLLoader.load() приводит к неустранимой ошибке, прекращающей загрузку.

Задает значение свойства type для объекта события ioError.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
errorIDСсылочный номер, связываемый с конкретной ошибкой (только AIR).
targetСетевой объект, с которым произошла ошибка ввода/вывода.
textТекст, отображаемый в качестве сообщения об ошибке.

Связанные элементы API

open

Событие  
Тип объекта события: flash.events.Event
свойство Event.type = flash.events.Event.OPEN

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Отправляется, когда операция загрузки начинается после вызова метода URLLoader.load().

Константа Event.OPEN определяет значение свойства type объекта события open.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
targetСетевой объект, установивший подключение.

Связанные элементы API

progress

Событие  
Тип объекта события: flash.events.ProgressEvent
свойство ProgressEvent.type = flash.events.ProgressEvent.PROGRESS

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Отправляется в случае получения данных в ходе операции загрузки.

Обратите внимание на то, что в случае с объектом URLLoader, данные становятся доступными только после полной загрузки. Поэтому событие состояния служит лишь оповещением о том, как проходит загрузка. Для доступа к данным, которые еще не загружены полностью, используйте объект URLStream.

Задает значение свойства type для объекта события progress.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
bytesLoadedЧисло элементов или байтов, загруженных на момент обработки события прослушивателем.
bytesTotalОбщее число элементов или байтов, которые в итоге будут получены в случае успешного завершения загрузки.
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
targetОбъект, сообщающий сведения о прогрессе.

Связанные элементы API

securityError

Событие  
Тип объекта события: flash.events.SecurityErrorEvent
свойство SecurityErrorEvent.type = flash.events.SecurityErrorEvent.SECURITY_ERROR

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Отправляется, если путем вызова метода URLLoader.load() предпринимается попытка загрузить данные с сервера, расположенного за пределами изолированной среды. Кроме того, отправляется, если при вызове URLLoader.load() предпринимается попытка загрузить SWZ-файл, при этом сертификат является недействительным, либо строка дайджеста не соответствует компоненту.

Константа SecurityErrorEvent.SECURITY_ERROR определяет значение свойства type для объекта события securityError.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
targetСетевой объект, сообщающий об ошибке безопасности.
textТекст, отображаемый в качестве сообщения об ошибке.

Связанные элементы API

URLLoaderExample.as

В следующем примере загружаются и отображаются данные, найденные в локальном текстовом файле. Здесь также отслеживается информация по обработке событий.

Примечание. Для выполнения этого примера поместите файл urlLoaderExample.txt в тот же каталог, где находится ваш SWF-файл. Данный файл должен содержать только следующую строку текста: answer=42&question=unknown

Данный пример кода выполняет следующее:

  1. Функция конструктора создает экземпляр URLLoader под именем loader и экземпляр URLRequest под именем request, в котором указывается место размещения и имя загружаемого файла.
  2. Объект loader передается методу configureListeners(), который добавляет прослушивателей для каждого из поддерживаемых событий URLLoader.
  3. Далее объект request передается методу loader.load(), который загружает текстовый файл.
  4. После того как URLLoader завершит загрузку текстового файла, отправляется событие Event.COMPLETE, которое запускает метод completeHandler(). Метод completeHandler() создает объект URLVariables на основе текста, загруженного из файла. Чтобы облегчить манипулирование загруженными данными, объект URLVariables преобразует пары «имя-значение» (в кодировке URL) в свойства ActionScript.
package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.*;

    public class URLLoaderExample extends Sprite {
        
        private loader:URLoader;
        public function URLLoaderExample() {
            loader = new URLLoader();
            configureListeners(loader);

            var request:URLRequest = new URLRequest("urlLoaderExample.txt");
            try {
                loader.load(request);
            } catch (error:Error) {
                trace("Unable to load requested document.");
            }
        }

        private function configureListeners(dispatcher:IEventDispatcher):void {
            dispatcher.addEventListener(Event.COMPLETE, completeHandler);
            dispatcher.addEventListener(Event.OPEN, openHandler);
            dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
            dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
            dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
        }

        private function completeHandler(event:Event):void {
            var loader:URLLoader = URLLoader(event.target);
            trace("completeHandler: " + loader.data);
    
            var vars:URLVariables = new URLVariables(loader.data);
            trace("The answer is " + vars.answer);
        }

        private function openHandler(event:Event):void {
            trace("openHandler: " + event);
        }

        private function progressHandler(event:ProgressEvent):void {
            trace("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
        }

        private function securityErrorHandler(event:SecurityErrorEvent):void {
            trace("securityErrorHandler: " + event);
        }

        private function httpStatusHandler(event:HTTPStatusEvent):void {
            trace("httpStatusHandler: " + event);
        }

        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }
    }
}




[ X ]Почему по-английски?
Содержимое Справочника ActionScript 3.0 отображается на английском языке

Не все части Справочника ActionScript 3.0 переводятся на все языки. Если какой-то текстовый элемент не переведен, он отображается на английском языке. Например, компонент ga.controls.HelpBox не переведен ни на один из языков. Это значит, что в русской версии справки компонент ga.controls.HelpBox будет отображаться на английском языке.