Пакет | flash.media |
Класс | public class AVURLStream |
Наследование | AVURLStream URLStream EventDispatcher Object |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Операции чтения в URLStream не являются блокирующими. Это означает, что перед тем как считать данные, необходимо с помощью свойства bytesAvailable
определить, доступен ли необходимый объем этих данных. Исключение EOFError
создается при наличии неполных данных.
По умолчанию все двоичные данные кодируются в формате обратного порядка файлов (сначала передается наиболее значимый байт).
Правила безопасности, применяемые к загрузке URL-адресов с классом URLStream, идентичны правилам, применяемым в отношении объектов URLLoader. При необходимости можно загрузить файлы правил. Применяются локальные правила безопасности файлов, предупреждения о нарушении безопасности появляются по мере необходимости.
Связанные элементы API
URLRequest
Свойство | Определено | ||
---|---|---|---|
bytesAvailable : uint [только для чтения]
Возвращает число байтов данных, доступных для чтения во входном буфере. | URLStream | ||
connected : Boolean [только для чтения]
Определяет, подключен ли в настоящий момент данный объект URLStream. | URLStream | ||
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
cookieHeader : String [только для записи] | AVURLStream | ||
endian : String
Указывает порядок байтов для данных. | URLStream | ||
objectEncoding : uint
Управляет версией AMF, используемой при записи или чтении объекта. | URLStream |
Метод | Определено | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | EventDispatcher | ||
Немедленно закрывает поток и отменяет операцию загрузки. | URLStream | ||
Посылает событие в поток событий. | EventDispatcher | ||
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
[переопределить]
Начинает загрузку URL-адреса, указанного в параметре request. | AVURLStream | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Считывает из потока логическое значение. | URLStream | ||
Считывает из потока байт со знаком. | URLStream | ||
Считывает из потока число байт данных. | URLStream | ||
Считывает из потока число IEEE 754 с двойной точностью и плавающей запятой. | URLStream | ||
Считывает из потока число IEEE 754 с одинарной точностью и плавающей запятой. | URLStream | ||
Считывает из потока 32-разрядное целое число со знаком. | URLStream | ||
Считывает из потока байтов многобайтовую строку заданной длины с использованием заданного набора знаков. | URLStream | ||
readObject():*
Считывает объект из сокета, зашифрованного в формат AMF. | URLStream | ||
Считывает из потока 16-разрядное целое число со знаком. | URLStream | ||
Считывает из потока байтов без знака. | URLStream | ||
Считывает из потока 32-разрядное целое число без знака. | URLStream | ||
Считывает из потока 16-разрядное целое число без знака. | URLStream | ||
Считывает из потока строку UTF-8. | URLStream | ||
Считывает из потока последовательность байт UTF-8 и возвращает строку. | URLStream | ||
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Возвращает элементарное значение заданного объекта. | Object | ||
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher |
cookieHeader | свойство |
load | () | метод |
override public function load(request:URLRequest):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Начинает загрузку URL-адреса, указанного в параметре request
.
Примечание. Если загружаемый файл содержит символы, не принадлежащие коду ASCII (например, во многих языках, кроме английского), рекомендуется сохранить файл в кодировке UTF-8 или UTF-16, как противоположных стандарту ASCII.
Если мгновенно происходит сбой операции загрузки, создается исключение IOError или SecurityError (включая сообщение о нарушении безопасности локального файла) с описанием данного сбоя. В противном случае событие open
отправляется, если успешно начинается загрузка URL-адреса. При возникновении ошибки отправляется событие ошибки.
По умолчанию вызывающий SWF-файл и загружаемый URL-адрес должны находиться в одном и том же домене. Например, SWF-файл на www.adobe.com может загружать данные только из источников, которые также размещены на сайте www.adobe.com. Чтобы загрузить данные с другого домена, разместите файл политик URL-адресов на сервере, где расположены эти данные.
В проигрывателе Flash Player нельзя подключаться к общепринятым зарезервированным портам. Полный список заблокированных портов см. в разделе «Ограничение API-интерфейсов сетевого подключения» в руководстве ActionScript 3.0 Developer's Guide (руководстве разработчика по ActionScript 3.0).
Для того чтобы при работе с проигрывателем Flash Player SWF-файл не использовал этот метод, задайте параметр allowNetworking
для тегов object
и embed
HTML-страницы с SWF-содержимым.
В приложении Flash Player 10 и более поздних версий и в AIR 1.5 и более поздних версий при использовании типа содержимого multipart (например, multipart/form-data), в котором содержатся загружаемые данные (обозначена параметром filename в заголовке content-disposition в теле оператора POST), к операции POST применяются правила безопасности для загрузок:
- Операция POST должна быть выполнена в ответ на действие, инициированное пользователем, такое как щелчок мыши или нажатие клавиши.
- Если операция POST является междоменной (назначением операции POST не является сервер, на котором содержится SWF-файл, отправляющий запрос POST), целевой сервер должен предоставить файл политик URL, в котором разрешен междоменный доступ.
Кроме того, все объекты multipart Content-Type должны иметь допустимый синтаксис (в соответствии со стандартами RFC2046). Если синтаксис является недопустимым, к операции POST применяются правила безопасности, действующие для загрузок.
Эти правила также применяются к содержимому AIR в изолированных программных средах, отличных от среды приложения. Однако в Adobe AIR эти ограничения по безопасности не распространяются на содержимое в изолированной программной среде приложения (содержимое, установленное с приложением AIR).
Дополнительные сведения о безопасности см. в разделе центра разработчиков Flash Player Безопасность.
В AIR объект URLRequest можно зарегистрировать для события состояния httpResponse
. В отличии от события httpStatus
, событие httpResponseStatus
доставляется до получения данных ответа. Таким образом, в событие httpResponseStatus
входят значения свойств responseHeaders
и responseURL
(которые для события httpStatus
имеют значение undefined.) Обратите внимание на то, что httpResponseStatus
(при наличии такового) будет отправляться до (как дополнение) любого события complete
или error
.
При наличии прослушивателя событий httpResponseStatus
тело сообщения ответа всегда отправляется; а ответы с кодами состояния HTTP всегда приводят к событию complete
. Это правило соблюдается независимо от того, обозначает код состояния HTTP в ответе успешное выполнение или ошибку.
В AIR при отсутствии прослушивателя событий httpResponseStatus
поведение отличается в зависимости от версии SWF:
- В случае с содержимым SWF 9 тело сообщения ответа HTTP отправляется, только если код состояния HTTP в ответе означает успешное выполнение. В противном случае (если возникла ошибка) тело сообщения не отправляется, а объект URLRequest отправляет событие IOError.
- В случае с содержимым SWF 10 тело сообщения ответа HTTP отправляется всегда. Если возникла ошибка, объект URLRequest отправляет событие IOError.
Параметры
request:URLRequest — Объект URLRequest, определяющий URL-адрес для загрузки. Если значение данного параметра или свойства URLRequest.url переданного объекта URLRequest равно null , приложение выдает ошибку пустого указателя.
|
События
complete: — Отправляется после успешной загрузки данных. При наличии прослушивателя событий httpResponseStatus объект URLRequest также отправляет событие complete независимо от того, что означает код состояния в ответе HTTP, успешное выполнение или ошибку.
| |
httpStatus: — Если доступ осуществляется по протоколу HTTP и текущая среда поддерживает получение кодов состояния, можно получить эти события в дополнение к событию complete или error .
| |
httpResponseStatus: — Отправляется, если путем вызова метода load() выполняется попытка доступа к данным через HTTP, и Adobe AIR может обнаружить и вернуть код статуса для запроса.
| |
ioError: — Не удается завершить операцию загрузки.
| |
open: — Отправляется при запуске операции загрузки.
| |
securityError: — В рамках операции загрузки была произведена попытка извлечь данные с сервера, расположенного за пределами изолированной среды вызывающего объекта. Для решения этой проблемы можно использовать файл политики на сервере.
|
Выдает
ArgumentError — Объекты URLRequest.requestHeader могут не содержать определенные запрещенные заголовки запроса HTTP. Дополнительные сведения см. в описании класса URLRequestHeader.
| |
MemoryError — Данная ошибка может возникнуть по следующим причинам:
| |
SecurityError — Локальные ненадежные SWF-файлы могут быть изолированы от Интернета. Чтобы обойти эту проблему, можно переклассифицировать данный SWF-файл как локальный с сетевым подключением или доверенный.
| |
SecurityError — Вы пытаетесь подключиться к зарезервированному порту. Полный список заблокированных портов см. в разделе «Ограничение API-интерфейсов сетевого подключения» в руководстве ActionScript 3.0 Developer's Guide (руководстве разработчика по ActionScript 3.0).
|
Tue Jun 12 2018, 11:34 AM Z