Пакет | flash.net |
Класс | public class URLLoader |
Наследование | URLLoader EventDispatcher Object |
Подклассы | AVURLLoader |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Объект 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 | ||
constructor : 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 | ||
Посылает событие в поток событий. | EventDispatcher | ||
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Отправляет и загружает данные с заданного URL-адреса. | URLLoader | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Возвращает элементарное значение заданного объекта. | Object | ||
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher |
Событие | Сводка | Определено | ||
---|---|---|---|---|
[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR перемещается в фокус операционной системы и становится активным. | EventDispatcher | |||
Отправляется после декодирования всех полученных данных и размещения их в свойстве data объекта URLLoader. | URLLoader | |||
[многоадресное событие] Отправляется, когда проигрыватель 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
Пример ( Использование этого примера )
//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
Пример ( Использование этого примера )
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 ) — Определяет, является ли ссылка на прослушиватель «сильной» или «слабой». «Сильная» ссылка (по умолчанию) предотвращает удаление прослушивателя сборщиком мусора. «Слабая» ссылка позволяет удалить прослушиватель. Функции элементов уровня класса не подлежат удалению в качестве мусора, вследствие чего можно установить |
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: — Отправляется после успешной загрузки данных.
| |
httpStatus: — Если доступ осуществляется по протоколу HTTP и текущая среда Flash Player поддерживает получение кодов состояния, то можно получить эти события дополнительно к событию complete или error .
| |
ioError: — Не удается завершить операцию загрузки.
| |
progress: — Отправляется в случае получения данных в ходе операции загрузки.
| |
securityError: — В рамках операции загрузки была произведена попытка извлечь данные с сервера, расположенного за пределами изолированной среды вызывающего объекта. Для решения этой проблемы можно использовать файл политики на сервере.
| |
securityError: — Операция загрузки предприняла попытку загрузить SWZ-файл (компонент платформы Adobe), но сертификат является недействительным или строка дайджеста не соответствует компоненту.
| |
open: — Отправляется в начале операции загрузки.
| |
httpResponseStatus: — Отправляется, если путем вызова метода 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-файла создается объект 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
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | false |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
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
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | false |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
currentTarget | Объект, активно обрабатывающий объект Event с помощью прослушивателя событий. |
responseURL | URL-адрес, с которого был получен ответ. |
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
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | false |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
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
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | false |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
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
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | false |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
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
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | false |
bytesLoaded | Число элементов или байтов, загруженных на момент обработки события прослушивателем. |
bytesTotal | Общее число элементов или байтов, которые в итоге будут получены в случае успешного завершения загрузки. |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
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
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | false |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
currentTarget | Объект, активно обрабатывающий объект Event с помощью прослушивателя событий. |
target | Сетевой объект, сообщающий об ошибке безопасности. |
text | Текст, отображаемый в качестве сообщения об ошибке. |
Связанные элементы API
Примечание. Для выполнения этого примера поместите файл urlLoaderExample.txt в тот же каталог, где находится ваш SWF-файл. Данный файл должен содержать только следующую строку текста: answer=42&question=unknown
Данный пример кода выполняет следующее:
- Функция конструктора создает экземпляр URLLoader под именем
loader
и экземпляр URLRequest под именемrequest
, в котором указывается место размещения и имя загружаемого файла. - Объект
loader
передается методуconfigureListeners()
, который добавляет прослушивателей для каждого из поддерживаемых событий URLLoader. - Далее объект
request
передается методуloader.load()
, который загружает текстовый файл. - После того как 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); } } }
Tue Jun 12 2018, 11:34 AM Z