パッケージflash.net
public final class URLRequest
継承URLRequest Inheritance Object

URLRequest クラスは、すべての情報を 1 つの HTTP 要求にキャプチャします。URLRequest オブジェクトは、URLStream、URLLoader、Loader などのロード処理を行う load() メソッドに渡され、これによって URL のダウンロードが開始されます。また、FileReference クラスの upload() メソッドおよび download() メソッドにも渡されます。

デフォルトで、url パラメータに渡す URL はサブドメインを含めて呼び出し元の SWF ファイルと同じドメインに置かれている必要があります。たとえば、www.adobe.com と store.adobe.com は異なるドメインです。異なるドメインからデータをロードするには、SWF ファイルをホストするサーバーにクロスドメインポリシーファイルを配置します。

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

詳細については、次のトピックを参照してください。

例の表示

関連項目

URLRequestHeader
URLLoader
URLStream
FileReference
外部データの操作


パブリックプロパティ
 プロパティ定義
 Inheritedconstructor : Object
特定のオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  contentType : String
任意の POST データの MIME コンテンツタイプです。
URLRequest
  data : Object
URL リクエストで送信されるデータを含むオブジェクトです。
URLRequest
  method : String
HTTP フォーム送信メソッドが GET または POST のどちらの操作であるかを制御します。
URLRequest
 Inheritedprototype : Object
[static] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
  requestHeaders : Array
HTTP リクエストヘッダの配列が HTTP リクエストに追加されます。
URLRequest
  url : String
リクエストされる URL です。
URLRequest
パブリックメソッド
 メソッド定義
  URLRequest(url:String = null)
URLRequest オブジェクトを作成します。
URLRequest
 InheritedhasOwnProperty(name:String):Boolean
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 InheritedisPrototypeOf(theClass:Object):Boolean
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 InheritedpropertyIsEnumerable(name:String):Boolean
指定されたプロパティが存在し、列挙可能かどうかを示します。
Object
 InheritedsetPropertyIsEnumerable(name:String, isEnum:Boolean = true):void
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 InheritedtoString():String
指定されたオブジェクトのストリング表現を返します。
Object
 InheritedvalueOf():Object
指定されたオブジェクトのプリミティブ値を返します。
Object
プロパティの詳細
contentTypeプロパティ
contentType:String  [read-write]

任意の POST データの MIME コンテンツタイプです。

メモ : FileReference.upload() メソッドおよび FileReference.download() メソッドでは URLRequest.contentType パラメータをサポートしていません。

実装
    public function get contentType():String
    public function set contentType(value:String):void
dataプロパティ 
data:Object  [read-write]

URL リクエストで送信されるデータを含むオブジェクトです。

このプロパティは method プロパティと一緒に使用します。URLRequest.method の値が POST の場合、データは HTTP POST メソッドで URLRequest オブジェクトによって転送されます。

URLRequest.method の値が GET の場合、データは HTTP GET メソッドで URLRequest オブジェクトによって送信される変数を定義します。

URLRequest API は、ストリング以外に、バイナリ POST と URL エンコード変数もサポートします。データオブジェクト型には、ByteArray、URLVariables、または String を指定できます。

データが使用される方法は、使用されるオブジェクトの型によって異なります。

このデータは、navigateToURL()FileReference.upload() などのメソッドで URLRequest オブジェクトが使用されるまで送信されません。

実装
    public function get data():Object
    public function set data(value:Object):void

関連項目



次の例では、新しいウィンドウで http://www.[yourDomain].com/application.jsp でホストされるリモート アプリケーションを開き、 URLVariables オブジェクトで捕捉したユーザーセッションに関するデータをアプリケーションに渡します。

この例のハイライトは、次のとおりです。

  1. コンストラクタ関数は request という名前の、リモートアプリケーションの URL をパラメータとして取る URLRequest インスタンスを作成します。
  2. URLVariables オブジェクトが作成され、その 2 つのプロパティに値が割り当てられます。
  3. URLVariables オブジェクトが URLRequest オブジェクトのdata プロパティに割り当てられます。
  4. この例では、navigateToURL を呼び出して、新しいブラウザウィンドウを開き、 リモートアプリケーションの URL に接続します。

メモ: この例を実行するには、この例のリモートアプリケーションの URL を 実際の URL に置き換える必要があります。さらに、 URLVariables オブジェクトの Flash Player で捕捉した情報を処理するためのサーバーコードが必要です。

package {
    import flash.display.Sprite;
    import flash.net.navigateToURL;
    import flash.net.URLRequest;
    import flash.net.URLVariables;

    public class URLVariablesExample extends Sprite {

        public function URLVariablesExample() {
            var url:String = "http://www.[yourDomain].com/application.jsp";
            var request:URLRequest = new URLRequest(url);
            var variables:URLVariables = new URLVariables();
            variables.exampleSessionId = new Date().getTime();
            variables.exampleUserLabel = "guest";
            request.data = variables;
            navigateToURL(request);
        }
    }
}

methodプロパティ 
method:String  [read-write]

HTTP フォーム送信メソッドが GET または POST のどちらの操作であるかを制御します。有効な値は、URLRequestMethod.GET または URLRequestMethod.POST です。

デフォルト値URLRequestMethod.GET.

実装
    public function get method():String
    public function set method(value:String):void

Throws
ArgumentError value パラメータが URLRequestMethod.GET でも URLRequestMethod.POST でもない場合。

関連項目



次の例では、新しいウィンドウで http://www.[yourDomain].com/application.jsp でホストされるリモート アプリケーションを開き、 URLVariables オブジェクトで捕捉したユーザーセッションに関するデータをアプリケーションに渡します。 URLRequest.method プロパティの値を、次のように明示的に設定します。 URLRequestMethod.POST.

この例のハイライトは、次のとおりです。

  1. コンストラクタ関数は request という名前の、リモートアプリケーションの URL をパラメータとして取る URLRequest インスタンスを作成します。
  2. URLVariables オブジェクトが作成され、その 2 つのプロパティに値が割り当てられます。
  3. URLVariables オブジェクトが URLRequest オブジェクトのdata プロパティに割り当てられます。
  4. URLRequest.method プロパティの値が、次のように設定されます。 URLRequestMethod.POST.
  5. この例では、navigateToURL を呼び出して、新しいブラウザウィンドウを開き、 リモートアプリケーションの URL に接続します。

メモ: この例を実行するには、この例のリモートアプリケーションの URL を 実際の URL に置き換える必要があります。さらに、 URLVariables オブジェクトの Flash Player で捕捉した情報を処理するためのサーバーコードが必要です。

package {
    import flash.display.Sprite;
    import flash.net.navigateToURL;
    import flash.net.URLRequest;
    import flash.net.URLRequestMethod;
    import flash.net.URLVariables;

    public class URLRequest_method extends Sprite {

        public function URLRequest_method() {
            var url:String = "http://www.[yourDomain].com/application.jsp";
            var request:URLRequest = new URLRequest(url);
            
            var variables:URLVariables = new URLVariables();
            variables.exampleSessionId = new Date().getTime();
            variables.exampleUserLabel = "guest";
            request.data = variables;
            request.method = URLRequestMethod.POST;
            
            navigateToURL(request);
        }
    }
}

requestHeadersプロパティ 
requestHeaders:Array  [read-write]

HTTP リクエストヘッダの配列が HTTP リクエストに追加されます。配列は URLRequestHeader オブジェクトから構成されます。配列の各オブジェクトは、次のように名前ストリングと値ストリングを含む URLRequestHeader オブジェクトである必要があります。

  var rhArray:Array = new Array(new URLRequestHeader("Content-Type", "text/html"));
  

Flash Player ではリクエストヘッダに対して一定の制限が設定されています。詳細については、URLRequestHeader クラスの説明を参照してください。

FileReference.upload() および FileReference.download() メソッドは URLRequest.requestHeaders パラメータをサポートしていません。

実装
    public function get requestHeaders():Array
    public function set requestHeaders(value:Array):void

関連項目

urlプロパティ 
url:String  [read-write]

リクエストされる URL です。デフォルトで、URL はサブドメインを含めて呼び出し元の SWF ファイルと同じドメインに置かれている必要があります。たとえば、www.adobe.com と store.adobe.com にある SWF ファイルは異なるドメインにあります。異なるドメインからデータをロードするには、SWF ファイルをホストするサーバーにクロスドメインポリシーファイルを配置します。詳細については、URLRequest クラスの説明のセキュリティに関する説明を参照してください。

実装
    public function get url():String
    public function set url(value:String):void
コンストラクタの詳細
URLRequest()コンストラクタ
public 関数 URLRequest(url:String = null)

URLRequest オブジェクトを作成します。System.useCodePagetrue の場合、リクエストは Unicode ではなく、システムのコードページを使ってエンコードされます。System.useCodePagefalse の場合、リクエストはシステムのコードページではなく、Unicode を使ってエンコードされます。

パラメータ
url:String (default = null) — リクエストされる URL です。url プロパティを使用して、URL を後から設定できます。

関連項目


次の例では、新しい Loader オブジェクトを作成し、それに XML ファイルへのパスを含む URLRequest オブジェクトを渡します。ロード処理が 成功した場合、complete イベントが送出され、XML ファイル内のデータが出力されます。追加のイベントハンドラはエラーイベントを含む他のイベントを キャプチャします。

この例を実行するには、XMLFile.xml というファイルを SWF ファイルと同じディレクトリに 配置します。


package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.*;

    public class URLRequestExample extends Sprite {

        public function URLRequestExample() {
            var loader:URLLoader = new URLLoader();
            configureListeners(loader);

            var request:URLRequest = new URLRequest("XMLFile.xml");
            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);
        }

        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);
        }
    }
}




 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flex/2_jp/langref/flash/net/URLRequest.html