パッケージflash.net
public class URLLoader
継承URLLoader Inheritance EventDispatcher Inheritance Object

URLLoader クラスは、指定した URL からテキスト、バイナリデータ、または URL エンコード形式の変数をダウンロードする際に使用します。動的なデータ駆動アプリケーションで使用するテキストファイル、XML、その他の情報をダウンロードする場合に便利です。

URLLoader オブジェクトは、データを ActionScript で使用できるようにする前に、それらのすべてのデータを URL からダウンロードします。URLLoader オブジェクトは、ダウンロードの進捗に関する通知を送信します。これらは、送出済みのイベント、さらには bytesLoaded および bytesTotal プロパティで監視できます。

url パラメータに渡す値は、デフォルトでは、同じドメインに置かれている必要があります。たとえば www.adobe.com に置かれている SWF ファイルは、www.adobe.com に置かれているソースからのみデータをロードできます。異なるドメインからデータをロードする場合は、SWF ファイルをホストするサーバーにクロスドメインポリシーファイルを置いておく必要があります。

このメソッドを使用するときは、Adobe® Flash® Player セキュリティモデルを考慮してください。

Flash Player 8 以降 :

Flash Player 7 以降 :

詳細については、次の参照先を参照してください。

Flash Player 7 より前のバージョンの Player で SWF ファイルを実行している場合、url は、呼び出し元の SWF ファイルと同じスーパードメインに属している必要があります。スーパードメインは、ファイルの URL の左端の要素を削除することで求められます。たとえば、www.adobe.com に存在する SWF ファイルは、store.adobe.com に存在するソースからデータをロードできます。これは、どちらのファイルも同じスーパードメイン adobe.com に属しているためです。

関連項目

URLRequest
URLVariables
URLStream
外部 XML ドキュメントの読み込み
外部データの操作


パブリックプロパティ
 プロパティ定義
  bytesLoaded : uint = 0
ロード操作中に、既にロード済みのデータのバイト数を示します。
URLLoader
  bytesTotal : uint = 0
ダウンロードデータの合計バイト数を示します。
URLLoader
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  data : *
ロード操作によって受信したデータです。
URLLoader
  dataFormat : String = "text"
ダウンロードしたデータがテキスト (URLLoaderDataFormat.TEXT)、生のバイナリデータ (URLLoaderDataFormat.BINARY)、または URL エンコードされた変数 (URLLoaderDataFormat.VARIABLES) のいずれであるかを制御します。
URLLoader
 Inheritedprototype : Object
[static] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
パブリック Methods
 メソッド定義
  
URLLoader(request:URLRequest = null)
URLLoader オブジェクトを作成します。
URLLoader
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
リスナーがイベントの通知を受け取るように、イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録します。
EventDispatcher
  
進行中のロード操作は直ちに終了します。
URLLoader
 Inherited
イベントをイベントフローに送出します。
EventDispatcher
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
指定されたプロパティがオブジェクトに定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
  
load(request:URLRequest):void
指定された URL からデータを送信およびロードします。
URLLoader
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
イベント
 イベント一覧定義
 Inherited Flash Player がオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
   受信したすべてのデータがデコードされ、URLLoader オブジェクトの data プロパティに配置された後に送出されます。URLLoader
 Inherited Flash Player がオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
   URLLoader.load() を呼び出して HTTP を介してデータにアクセスを試み、現在の Flash Player 環境で要求のステータスコードを検出して返すことができる場合に送出されますURLLoader
   URLLoader.load() の呼び出しによってダウンロードが終了するという致命的なエラーが発生する場合に送出されます。URLLoader
   URLLoader.load() メソッドの呼び出しによりダウンロード処理が開始されると送出されます。URLLoader
   ダウンロード処理を実行中にデータを受信したときに送出されます。URLLoader
   URLLoader.load() の呼び出しによってセキュリティサンドボックスの外部にあるサーバーからデータをロードしようとすると送出されます。URLLoader
プロパティの詳細
bytesLoadedプロパティ
public var bytesLoaded:uint = 0

ロード操作中に、既にロード済みのデータのバイト数を示します。

bytesTotalプロパティ 
public var bytesTotal:uint = 0

ダウンロードデータの合計バイト数を示します。このプロパティは、ロード操作の進行中は 0 を格納し、操作が完了した時点で設定されます。

dataプロパティ 
public var data:*

ロード操作によって受信したデータです。このプロパティは、ロード操作が完了したときにのみ設定されます。データの形式は、dataFormat プロパティの設定によって決まります。

dataFormat プロパティが URLLoaderDataFormat.TEXT の場合、受け取るデータは、ロードされたファイルのテキストを含むストリングです。

dataFormat プロパティが URLLoaderDataFormat.BINARY の場合、受け取るデータは、生のバイナリデータを含む ByteArray オブジェクトです。

dataFormat プロパティが URLLoaderDataFormat.VARIABLES の場合、受け取るデータは、URL エンコードされた変数を含む URLVariables オブジェクトです。

関連項目

dataFormatプロパティ 
public var dataFormat:String = "text"

ダウンロードしたデータがテキスト (URLLoaderDataFormat.TEXT)、生のバイナリデータ (URLLoaderDataFormat.BINARY)、または URL エンコードされた変数 (URLLoaderDataFormat.VARIABLES) のいずれであるかを制御します。

dataFormat プロパティの値が URLLoaderDataFormat.TEXT の場合、受け取るデータは、ロードされたファイルのテキストを含むストリングです。

dataFormat プロパティの値が URLLoaderDataFormat.BINARY の場合、受け取るデータは、生のバイナリデータを含む ByteArray オブジェクトです。

dataFormat プロパティの値が URLLoaderDataFormat.VARIABLES の場合、受け取るデータは、URL エンコードされた変数を含む URLVariables オブジェクトです。

デフォルト値URLLoaderDataFormat.TEXT.

関連項目

コンストラクタの詳細
URLLoader()コンストラクタ
public 関数 URLLoader(request:URLRequest = null)

URLLoader オブジェクトを作成します。

パラメータ
request:URLRequest (default = null) — ダウンロードする URL を指定する URLRequest オブジェクトです。このパラメータを省略すると、ロード操作は開始されません。指定すると、直ちにロード操作が開始されます。詳細については、load を参照してください。

関連項目

メソッドの詳細
close()メソッド
public function close():void

進行中のロード操作は直ちに終了します。進行中のロード操作は直ちに終了します。URL が現在ストリーミングされていない場合、無効なストリームエラーがスローされます。

load()メソッド 
public function load(request:URLRequest):void

指定された URL からデータを送信およびロードします。dataFormat プロパティに設定した値に基づき、テキスト、生のバイナリデータ、または URL エンコードされた変数としてデータを受け取ることができます。dataFormat プロパティのデフォルト値はテキストです。データを指定された URL に送信する場合は、URLRequest オブジェクトの data プロパティを設定できます。

メモ : ロード中のファイルに ASCII 文字以外の文字 (英語以外の多くの言語に存在する) が含まれている場合は、ASCII のような非 Unicode 形式ではなく UTF-8 または UTF-16 エンコーディング形式でファイルを保存することをお勧めします。

デフォルトで、ロードする URL は呼び出し元の SWF ファイルと同じドメインに置かれている必要があります。たとえば www.adobe.com に置かれている SWF ファイルは、www.adobe.com に置かれているソースからのみデータをロードできます。異なるドメインからデータをロードする場合は、SWF ファイルのホストとして動作するサーバーにクロスドメインポリシーファイルを置いておく必要があります。

このメソッドを使用するときは、Flash Player セキュリティモデルを考慮してください。

Flash Player 9 以降の場合、SWF コンテンツを含む HTML ページの object タグおよび embed タグの allowNetworking パラメータを設定することで、SWF ファイルがこのメソッドを使用しないようにできます。

Flash Player 8 以降 :

Flash Player 7 以降では、クロスドメインポリシーファイルによって、Web サイトでのリソースへのクロスドメインアクセスを許可することができます。Flash Player 7 以降で SWF ファイルを実行している場合、url は正確に同じドメインに置かれている必要があります。たとえば www.adobe.com に置かれている SWF ファイルは、www.adobe.com に置かれているソースからのみデータをロードできます。

詳細については、次の参照先を参照してください。

Flash Player 7 より前のバージョンの Player で SWF ファイルを実行している場合、url は、呼び出し元の SWF ファイルと同じスーパードメインに属している必要があります。スーパードメインは、ファイルの URL の左端の要素を削除することで求められます。たとえば、www.adobe.com に存在する SWF ファイルは、store.adobe.com に存在するソースからデータをロードできます。これは、どちらのファイルも同じスーパードメイン adobe.com に属しているためです。

パラメータ
request:URLRequest — ダウンロードする URL を指定する URLRequest オブジェクトです。

イベント
complete:Event — データが正常にロードされた後に送出されます。
 
httpStatus:HTTPStatusEvent — アクセスが HTTP 経由で、現在の Flash Player 環境がステータスコードの取得をサポートしている場合、complete イベントまたは error イベントに加えて、これらのイベントを受け取る場合があります。
 
ioError:IOErrorEvent — ロード操作を完了できませんでした。
 
progress:ProgressEvent — ダウンロード処理を実行中にデータを受信したときに送出されます。
 
securityError:SecurityErrorEvent — 呼び出し元のセキュリティ Sandbox の外部にあるサーバーからデータを取得しようとするロード操作。これはサーバー上のポリシーファイルを使用すると回避できます。
 
open:Event — ロード操作が開始したときに送出されます。

スロー
ArgumentError URLRequest.requestHeader オブジェクトには、禁止されている特定の HTTP 要求のヘッダーを含めることはできません。詳細については、URLRequestHeader クラスの説明を参照してください。
 
MemoryError — このエラーは、次の理由で発生することがあります。1) Flash Player では、URLRequest.data パラメータを UTF8 から MBCS に変換できません。このエラーは、load() に渡された URLRequest オブジェクトが GET 操作を行うように設定された場合、および System.useCodePagetrue に設定された場合に発生することがあります。2) Flash Player では POST データにメモリを割り当てることができません。このエラーは、load に渡された URLRequest オブジェクトが POST 操作を行うように設定された場合に発生することがあります。
 
SecurityError — 信頼されていないローカル SWF はインターネットへの接続を許可されません。これは、ネットワークアクセスを許可されたローカル SWF ファイル、または信頼できる SWF ファイルとして再分類すると回避できる場合があります。
 
TypeError — 要求パラメータの値、または渡された URLRequest オブジェクトの URLRequest.url プロパティの値は null です。

関連項目

イベントの詳細
completeevent 
イベントオブジェクトの型: flash.events.Event
Event.type property = flash.events.Event.COMPLETE

受信したすべてのデータがデコードされ、URLLoader オブジェクトの data プロパティに配置された後に送出されます。このイベントが送出されると、受信したデータにアクセスできます。

complete イベントオブジェクトの type プロパティの値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
targetロードが完了したネットワークオブジェクトです。

関連項目

httpStatusevent  
イベントオブジェクトの型: flash.events.HTTPStatusEvent
HTTPStatusEvent.type property = flash.events.HTTPStatusEvent.HTTP_STATUS

URLLoader.load() を呼び出して HTTP を介してデータにアクセスを試み、現在の Flash Player 環境で要求のステータスコードを検出して返すことができる場合に送出されます(一部のブラウザ環境ではこの情報を提供できません)。httpStatus イベントがある場合は、complete イベントまたは error イベントの前に、これらのイベントに加えて送信されます。

httpStatusイベントオブジェクトの type プロパティの値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
statusサーバーから返された HTTP ステータスコードです。
targetHTTP ステータスコードを受け取るネットワークオブジェクトです。

関連項目

ioErrorevent  
イベントオブジェクトの型: flash.events.IOErrorEvent
IOErrorEvent.type property = flash.events.IOErrorEvent.IO_ERROR

URLLoader.load() の呼び出しによってダウンロードが終了するという致命的なエラーが発生する場合に送出されます。

ioError イベントオブジェクトの type プロパティの値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
target入出力エラーが発生したネットワークオブジェクトです。
textエラーメッセージとして表示されるテキストです。

関連項目

openevent  
イベントオブジェクトの型: flash.events.Event
Event.type property = flash.events.Event.OPEN

URLLoader.load() メソッドの呼び出しによりダウンロード処理が開始されると送出されます。

open イベントオブジェクトの type プロパティの値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
target接続をオープンしたネットワークオブジェクトです。

関連項目

progressevent  
イベントオブジェクトの型: flash.events.ProgressEvent
ProgressEvent.type property = flash.events.ProgressEvent.PROGRESS

ダウンロード処理を実行中にデータを受信したときに送出されます。

URLLoader オブジェクトでは、完全にデータが受信されるまではデータにアクセスできません。このため、progress イベントの通知でしかダウンロードの進行状況を確認できません。完全にダウンロードされる前にデータにアクセスするには、URLStream オブジェクトを使用します。

progress イベントオブジェクトの type プロパティの値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
bytesLoadedリスナーがイベントを処理しているときにロードされたアイテム数またはバイト数です。
bytesTotalロードプロセスが成功した場合に最終的にロードされるアイテムまたはバイトの総数です。
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
target進行状況をレポートするネットワークオブジェクトです。

関連項目

securityErrorevent  
イベントオブジェクトの型: flash.events.SecurityErrorEvent
SecurityErrorEvent.type property = flash.events.SecurityErrorEvent.SECURITY_ERROR

URLLoader.load() の呼び出しによってセキュリティサンドボックスの外部にあるサーバーからデータをロードしようとすると送出されます。

SecurityErrorEvent.SECURITY_ERROR 定数は、securityError イベントオブジェクトの type プロパティ値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
targetセキュリティエラーを報告するネットワークオブジェクトです。
textエラーメッセージとして表示されるテキストです。

関連項目