Flash Lite 2 |
|||
| Flash Lite 2.x ActionScript リファレンスガイド > ActionScript クラス > LoadVars > sendAndLoad (LoadVars.sendAndLoad メソッド) | |||
my_lv オブジェクト内の変数を、指定された URL に送信 (Post) します。サーバーの応答がダウンロードされ、変数データとして解析され、結果の変数が target オブジェクトに挿入されます。
変数の送信方法は、LoadVars.send() の場合と同じです。変数を target にダウンロードする方法は LoadVars.load() と同じです。
Flash Player 7 より前のバージョンの Player で SWF ファイルを実行している場合、url は、呼び出し元の SWF ファイルと同じスーパードメインに属している必要があります。スーパードメインは、ファイルの URL の一番左の要素を削除することによって派生されます。たとえば、www.someDomain.com に存在する SWF ファイルは、store.someDomain.com に存在するソースからデータをロードできます。これは、どちらのファイルも同じスーパードメイン someDomain.com に属しているためです。
Flash Player 7 以降で SWF ファイルを実行している場合、url は正確に同じドメインに置かれている必要があります。たとえば www.someDomain.com に置かれている SWF ファイルは、www.someDomain.com に置かれているソースからのみデータをロードできます。異なるドメインからデータをロードする場合は、SWF ファイルをホストするサーバーに "クロスドメインポリシーファイル" を置いておく必要があります。
このメソッドは XML.sendAndLoad() と似ています。
使用できるバージョン : ActionScript 1.0、Flash Lite 2.0 - Flash Player 7 で動作が変更されました。
url: String - ストリング。変数のアップロード先の URL。呼び出し元の SWF ファイルが Web ブラウザで実行されている場合、url は SWF ファイルと同じドメインに属している必要があります。
target: Object - ダウンロードされる変数を受け取る LoadVars オブジェクトまたは XML オブジェクト。
method: String (オプション) - ストリング。HTTP プロトコルの GET メソッドまたは POST メソッド。デフォルト値は POST です。
Boolean - ブール値。
次の例では、TextInput インスタンス name_ti、TextArea インスタンス result_ta、Button インスタンス submit_button をステージに追加します。ユーザーがこの例の Login ボタンインスタンスをクリックすると、send_lv および result_lv の 2 つの LoadVars オブジェクトが作成されます。send_lv オブジェクトは、name_ti インスタンスから名前をコピーし、そのデータを greeting.cfm に送信します。このスクリプトの実行結果を result_lv オブジェクトにロードし、サーバーの応答を TextArea インスタンス (result_ta) に表示します。タイムラインのフレーム 1 に次の ActionScript を追加します。
var submitListener: Object = new Object();
submitListener.click = function(evt: Object) {
var result_lv: LoadVars = new LoadVars();
result_lv.onLoad = function(success: Boolean) {
if (success) {
result_ta.text = result_lv.welcomeMessage;
} else {
result_ta.text = "Error connecting to server.";
}
};
var send_lv: LoadVars = new LoadVars();
send_lv.name = name_ti.text;
send_lv.sendAndLoad("http: //www.flash-mx.com/mm/greeting.cfm", result_lv, "POST");
};
submit_button.addEventListener("click", submitListener);
より堅牢な例については、ActionScript のサンプルフォルダにある "login.fla" ファイルを参照してください。通常、"ActionScript" サンプルのフォルダへのパスは次のようになります。
send (LoadVars.send メソッド), load (LoadVars.load メソッド), sendAndLoad (XML.sendAndLoad メソッド)