| パッケージ | flash.net |
| クラス | public final class URLRequest |
| 継承 | URLRequest Object |
| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
load() メソッド、およびその他のロード処理に渡され、URL のダウンロードが開始されます。また、FileReference クラスの upload() メソッドおよび download() メソッドにも渡されます。
ローカルファイルシステムのサンドボックス内の SWF ファイルは、ネットワーク接続したサンドボックス内のリソースからデータを読み込むことができないか、またはデータを渡すことができません。
デフォルトで、呼び出し元の SWF ファイルおよびロードする URL は、同じドメインにある必要があります。例えば www.adobe.com に置かれている SWF ファイルは、www.adobe.com に置かれているソースからのみデータをロードできます。異なるドメインからデータをロードするには、データをホストするサーバに URL ポリシーファイルを配置します。
ただし、Adobe AIR では、アプリケーションセキュリティサンドボックス内のコンテンツ(AIR アプリケーションと共にインストールされたコンテンツ)は、これらのセキュリティ制限による制限を受けません。Adobe AIR で実行中のコンテンツの場合、アプリケーションセキュリティサンドボックス内のファイルは、次のいずれかの URL スキームを使って URL にアクセスできます。
http および https
file
app-storage
app
アプリケーションセキュリティサンドボックスにない、Adobe AIR で実行されるコンテンツには、(Flash Player の)ブラウザで実行されるコンテンツと同じ制限が適用され、コンテンツのドメインと URL ポリシーファイルで付与されたアクセス許可によりロード操作が管理されます。
セキュリティ情報について詳しくは、以下を参照してください。
関連項目
| プロパティ | 定義元 | ||
|---|---|---|---|
この要求に関する認証要求を処理するかどうかを指定します (true または false)。 | URLRequest | ||
この要求に対する正常な応答データをキャッシュするかどうかを指定します。 | URLRequest | ||
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。 | Object | |
| contentType : String
data プロパティのコンテンツの MIME コンテンツタイプ。 | URLRequest | ||
| data : Object
URL リクエストで送信されるデータを含むオブジェクトです。 | URLRequest | ||
| digest : String
Flash Player キャッシュに保存される (または Flash Player キャッシュから取得される) 署名付き Adobe プラットフォームコンポーネントを一意に識別するストリング。 | URLRequest | ||
リダイレクトを続行するか(true)、続行しないか(false)を指定します。 | URLRequest | ||
HTTP プロトコルスタックでこの要求のクッキーを管理するかどうかを指定します。 | URLRequest | ||
| method : String
HTTP フォーム送信メソッドを制御します。 | URLRequest | ||
![]() | prototype : Object [静的]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。 | Object | |
| requestHeaders : Array
HTTP リクエストヘッダの配列が HTTP リクエストに追加されます。 | URLRequest | ||
| url : String
リクエストされる URL です。 | URLRequest | ||
この URLRequest がデータを取得する前に、ローカルキャッシュを参照するかどうかを指定します。 | URLRequest | ||
HTTP 要求で使用されるユーザーエージェントストリングを指定します。 | URLRequest | ||
| メソッド | 定義元 | ||
|---|---|---|---|
URLRequest オブジェクトを作成します。 | URLRequest | ||
![]() |
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | |
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | |
![]() |
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | |
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | |
![]() |
指定されたオブジェクトのストリング表現を返します。 | Object | |
![]() |
指定されたオブジェクトのプリミティブな値を返します。 | Object | |
| プロパティ |
authenticate:Boolean| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この要求に関する認証要求を処理するかどうかを指定します (true または false)。false の場合、認証が試行された結果 HTTP エラーが返されます。
以下の認証メソッドがサポートされています。
メモ:FileReference.upload()、FileReference.download()、および HTMLLoader.load() の各メソッドは、URLRequest.authenticate プロパティをサポートしていません。
デフォルト値 : true.
public function get authenticate():Boolean public function set authenticate(value:Boolean):voidSecurityError — 呼び出し元が AIR アプリケーションセキュリティサンドボックス内に存在しません。
|
関連項目
| プロパティ |
cacheResponse:Boolean| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この要求に対する正常な応答データをキャッシュするかどうかを指定します。true に設定すると、AIR アプリケーションはオペレーティングシステムの HTTP キャッシュを使用します。
メモ:HTMLLoader.load() メソッドは URLRequest.cacheResponse プロパティをサポートしていません。
デフォルト値 : true.
public function get cacheResponse():Boolean public function set cacheResponse(value:Boolean):voidSecurityError — 呼び出し元が AIR アプリケーションセキュリティサンドボックス内に存在しません。
|
関連項目
| contentType | プロパティ |
contentType:String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
data プロパティのコンテンツの MIME コンテンツタイプ。
デフォルト値は application/x-www-form-urlencoded です。
メモ:FileReference.upload()、FileReference.download()、および HTMLLoader.load() の各メソッドは、URLRequest.contentType プロパティをサポートしていません。
POST リクエストを送信する場合、contentType プロパティと data プロパティの値が正しく対応している必要があります。contentType プロパティの値は、data プロパティの値を解釈する方法をサーバーに指示します。
data プロパティの値が URLVariables オブジェクトの場合、contentType の値は application/x-www-form-urlencoded である必要があります。 data プロパティの値が他の型の場合、contentType の値は送信される POST データ (data プロパティの値に含まれるバイナリまたはストリングのデータ) の型を示す必要があります。 FileReference.upload() の場合、リクエストの は自動的に multipart/form-data に設定され、contentType プロパティの値は無視されます。Flash Player 10 以降では、"multipart/form-data" などのマルチパート Content-Type にアップロードが含まれていると(アップロードが含まれているかどうかは POST ボディ内の "content-disposition" ヘッダーの "filename" パラメータで示されます)、そのアップロードに適用されるセキュリティ規則によって POST 処理が拘束されます。
また、すべてのマルチパート Content-Type では、RFC2046 標準に準拠した有効なシンタックスを使用する必要があります。シンタックスが有効でない場合は、アップロードに適用されるセキュリティ規則によって POST 処理が拘束されます。
public function get contentType():String public function set contentType(value:String):void関連項目
| data | プロパティ |
data:Object| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
URL リクエストで送信されるデータを含むオブジェクトです。
このプロパティは method プロパティと一緒に使用します。 method の値が GET のときは、data の値は、HTTP クエリ文字列シンタックスを使用して URLRequest.url の値に追加されます。method の値が POST(または GET 以外の値)のときは、data の値は、HTTP 要求の本文に送信されます。
URLRequest API は、ストリング以外に、バイナリ POST と URL エンコード変数もサポートします。データオブジェクトには、ByteArray、URLVariables、または String オブジェクトを指定できます。
データが使用される方法は、使用されるオブジェクトの型によって異なります。
POST データとして使用されます。GET の場合、ByteArray 型のデータはサポートされません。FileReference.upload() および FileReference.download() の場合も、ByteArray 型のデータはサポートされません。POST の場合、変数は x-www-form-urlencoded 形式を使用してエンコードされ、結果のストリングが POST データとして使用されます。例外は FileReference.upload() の呼び出しです。この場合、変数は、multipart/form-data ポストの個別のフィールドとして送信されます。GET の場合、URLVariables オブジェクトは URLRequest オブジェクトによって送信される変数を定義します。POST または GET データとして使用されます。このデータは、navigateToURL() や FileReference.upload() などのメソッドで URLRequest オブジェクトが使用されるまで送信されません。
注意:contentType の値は、data プロパティのデータ型に対応させる必要があります。contentType プロパティの説明の注意を参照してください。
public function get data():Object public function set data(value:Object):void関連項目
この例のハイライトは、次のとおりです。
request という名前の URLRequest インスタンスを作成します。このとき、リモートアプリケーションの URL をパラメータとして取ります。data プロパティに割り当てられます。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);
}
}
}| digest | プロパティ |
digest:String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9.0.115.0 |
Flash Player キャッシュに保存される (または Flash Player キャッシュから取得される) 署名付き Adobe プラットフォームコンポーネントを一意に識別するストリングです。 Adobe プラットフォームコンポーネントは、ユーザーのコンピュータに永続的にキャッシュされる SWF コンテンツを含む署名付きファイル (SWZ ファイル) です。すべての SWZ ファイルはアドビ システムズ社によって署名されます。ダイジェストは単一のキャッシュされているファイルに対応します。ファイルを何らかの方法で変更すると、ダイジェストは予期しない方法で変更されます。ダイジェストを使用することにより、複数のドメインにまたがってキャッシュされているファイルを確認できます。同じダイジェストを持つ 2 つのファイルは同じファイルで、異なるダイジェストを持つ 2 つのファイルは同じファイルではありません。 ダイジェストに「なりすます」ファイル、ダイジェストを装うファイルを作成することは(実質的に)できません。
ダイジェストは、SHA-256 メッセージダイジェストアルゴリズム (16 進数形式で 64 文字長) に基づきます。
例えば、Flex SDK は Flex フレームワークの SWZ を含みます (また、その SWZ ファイルのダイジェストストリングを提供します)。この SWZ を Web サーバーにポストし、それを URLLoader オブジェクトの load() メソッドを使用して SWF ファイルに読み込むことができます。エンドユーザーのコンピュータに一致する SWZ ファイルが既にキャッシュされている場合は、そのキャッシュされている SWZ ファイルが使用されます。SWZ ファイルの digest と提供したダイジェストが一致すると、SWZ ファイルは一致します。それ以外の場合は、指定した URL から SWZ ファイルがアプリケーションによってダウンロードされます。
URLRequest オブジェクトの digest パラメータは、URLLoader.load() メソッドを呼び出して SWZ ファイルを読み込む場合にのみ設定します。URLRequest オブジェクトの digest パロパティが、他のメソッドで設定済みである場合は、IOError 例外がスローされます。
public function get digest():String public function set digest(value:String):voidArgumentError — 提供されるダイジェストは、ダウンロードされた署名付きファイルから抽出されたファイルのダイジェスト、またはキャッシュからロードされた署名付きファイルから抽出されたファイルのダイジェストとは一致しません。提供されたダイジェストの長さが誤っている場合、または提供されたダイジェストに無効な (16 進数以外の) 文字が含まれている場合にも、このエラーがスローされます。
|
loadBytes() () を呼び出すことでロード操作を完了しています。
var myURLReq:URLRequest = new URLRequest();
myURLReq.url = "http://yourdomain/users/jdoe/test01/_rsc/Automated/AssetCaching_rsc/test01/rsl.swz";
myURLReq.digest = "3B0AA28C7A990385E044D80F5637FB036317BB41E044D80F5637FB036317BB41";
var myURLLoader:URLLoader = new URLLoader();
myURLLoader.dataFormat = URLLoaderDataFormat.BINARY;
myURLLoader.addEventListener("complete", onC);
myURLLoad.load(myURLReq);
function onC(e) {
var someLoader:Loader = new Loader();
addChild(someLoader);
someLoader.loadBytes((ByteArray)(myURLLoad.data));
}
| プロパティ |
followRedirects:Boolean| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
リダイレクトを続行するか (true)、続行しないか (false) を指定します。
メモ:FileReference.upload()、FileReference.download()、および HTMLLoader.load() の各メソッドは、URLRequest.followRedirects プロパティをサポートしていません。
デフォルト値 : true.
public function get followRedirects():Boolean public function set followRedirects(value:Boolean):voidSecurityError — 呼び出し元が AIR アプリケーションセキュリティサンドボックス内に存在しません。
|
関連項目
| プロパティ |
manageCookies:Boolean| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
HTTP プロトコルスタックでこの要求のクッキーを管理するかどうかを指定します。true の場合、クッキーが要求に追加され、応答クッキーが記憶されます。false の場合、クッキーは要求に追加されず、応答クッキーは記憶されませんが、ユーザーは直接ヘッダを操作することでクッキー自体を管理できます。
Mac OS では、クッキーは Safari と共有されます。Mac OS でクッキーを消去するには :
Windows でクッキーを消去するには :
デフォルト値 : true.
public function get manageCookies():Boolean public function set manageCookies(value:Boolean):voidSecurityError — 呼び出し元が AIR アプリケーションセキュリティサンドボックス内に存在しません。
|
関連項目
| method | プロパティ |
method:String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
HTTP フォーム送信メソッドを制御します。
(ブラウザの)Flash Player で実行される SWF コンテンツの場合、このプロパティは GET 操作または POST 操作に制限されます。有効な値は URLRequestMethod.GET または URLRequestMethod.POST です。
Adobe AIR で実行されるコンテンツの場合、そのコンテンツがアプリケーションセキュリティボックス内にあれば、どのストリング値も使用可能です。それ以外の場合、コンテンツが Flash Player で実行されるときと同様に、GET 操作または POST 操作の使用に制限されます。
Adobe AIR で実行中のコンテンツの場合、navigateToURL() 関数を使用すると、ランタイムでは、POST メソッドを使用する URLRequest(method プロパティが URLRequestMethod.POST に設定されているもの)は、GET メソッドとして処理されます。
注意:Flash Player で実行されているときに、参照されるフォームに本文がない場合、Flash Player では自動的に GET 操作が使用されます。これは、メソッドが URLRequestMethod.POST に設定されている場合でも同じです。このため、正しいメソッドが使用されるように、ダミーの body を必ず含めることをお勧めします。
デフォルト値 : URLRequestMethod.GET.
public function get method():String public function set method(value:String):voidArgumentError — value パラメータが URLRequestMethod.GET でも URLRequestMethod.POST でもない場合。
|
関連項目
URLRequest.method プロパティの値を、URLRequestMethod.POST に明示的に設定します。
この例のハイライトは、次のとおりです。
request という名前の URLRequest インスタンスを作成します。このとき、リモートアプリケーションの URL をパラメータとして取ります。data プロパティに割り当てられます。URLRequest.method プロパティの値が URLRequestMethod.POST に設定されます。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| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
HTTP リクエストヘッダの配列が HTTP リクエストに追加されます。配列は URLRequestHeader オブジェクトから構成されます。配列の各オブジェクトは、次のように名前ストリングと値ストリングを含む URLRequestHeader オブジェクトである必要があります。
var rhArray:Array = new Array(new URLRequestHeader("Content-Type", "text/html"));
Flash Player および AIR ランタイムには、リクエストヘッダに一定の制限があります。詳細については、URLRequestHeader クラスの説明を参照してください。
URLRequest パラメータを受け取るメッソドすべてが requestHeaders プロパティをサポートしているわけではありません。呼び出すメソッドのマニュアルを参照してください。例えば、FileReference.upload() メソッドおよび FileReference.download() メソッドは、URLRequest.requestHeaders プロパティをサポートしていません。
ブラウザの制限により、カスタム HTTP リクエストヘッダは POST リクエストだけをサポートし、GET リクエストはサポートしません。
public function get requestHeaders():Array public function set requestHeaders(value:Array):void関連項目
| url | プロパティ |
url:String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
リクエストされる URL です。
Uniform Resource Locator 仕様で危険と説明されている文字 (http://www.faqs.org/rfcs/rfc1738.html を参照) や、URLRequest オブジェクトの URL スキームで予約されている文字 (予約されている目的以外に使用する場合) は、必ずエンコードしてください。例えば、パーセント(%)には "%25" を、番号記号(#)には "%23" を使用し、"http://www.example.com/orderForm.cfm?item=%23B-3&discount=50%25" などと示します。
デフォルトで、URL は呼び出し元のファイルと同じドメインにある必要があります。ただし、コンテンツが Adobe AIR アプリケーションセキュリティボックスで実行中の場合を除きます。異なるドメインからデータをロードする必要があるときは、データをホストするサーバに URL ポリシーファイルを配置します。詳細については、URLRequest クラスの説明を参照してください。
Adobe AIR で実行されるコンテンツの場合、アプリケーションセキュリティサンドボックス内のファイル(AIR アプリケーションと共にインストールされるファイル)は、次の URL スキームのいずれかを使用して URL にアクセスできます。
http および https file app-storage app 注意:IPv6(Internet Protocol version 6)は AIR および Flash Player 9.0.115.0 以降のバージョンでサポートされています。IPv6 は、128 ビットのアドレスをサポートするインターネットプロトコルのバージョンです (32 ビットのアドレスをサポートする、以前の IPv4 プロトコルの機能を向上したものです)。ネットワークインターフェイスでの IPv6 のアクティブ化が必要になる場合があります。詳細については、データをホストするオペレーティングシステムのヘルプを参照してください。ホストしているシステムで IPv6 がサポートされる場合、次に示すように、角括弧([])内に URL の IPv6 数値リテラルアドレスを指定できます。
rtmp://[2001:db8:ccc3:ffff:0:444d:555e:666f]:1935/test
public function get url():String public function set url(value:String):void関連項目
| プロパティ |
useCache:Boolean| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この URLRequest がデータを取得する前に、ローカルキャッシュを参照するかどうかを指定します。
メモ:HTMLLoader.load() メソッドは URLRequest.useCache プロパティをサポートしていません。
デフォルト値 : true.
public function get useCache():Boolean public function set useCache(value:Boolean):voidSecurityError — 呼び出し元が AIR アプリケーションセキュリティサンドボックス内に存在しません。
|
関連項目
| プロパティ |
userAgent:String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
HTTP 要求で使用されるユーザーエージェントストリングを指定します。
デフォルト値は、Flash Player で使用されるユーザーエージェントストリングと同じです。これは、Mac、Linux、および Windows で異なります。
メモ:HTMLLoader オブジェクトの load() メソッドで URLRequest オブジェクトが使用される場合、このプロパティはユーザーエージェントストリングに影響しません。HTMLLoader オブジェクトに対しユーザーエージェントストリングを設定するには、HTMLLoader オブジェクトの userAgent プロパティを設定するか、静的な URLRequestDefaults.userAgent プロパティを設定します。
public function get userAgent():String public function set userAgent(value:String):voidSecurityError — 呼び出し元が AIR アプリケーションセキュリティサンドボックス内に存在しません。
|
関連項目
| URLRequest | () | コンストラクタ |
public function URLRequest(url:String = null)| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
URLRequest オブジェクトを作成します。System.useCodePage が true の場合、リクエストは Unicode ではなく、システムのコードページを使ってエンコードされます。System.useCodePage が false の場合、リクエストはシステムのコードページではなく、Unicode を使ってエンコードされます。
url:String (default = null) — リクエストされる URL です。url プロパティを使用して、URL を後から設定できます。
|
関連項目
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/3_jp/langref/flash/net/URLRequest.html