私は、ユーザが変更を保存できるようにするスケジューリングアプリケーションを持っています。ユーザーが保存ボタンをクリックすると、Flexはすべての情報をColdFusionスクリプトに送信し、ColdFusionスクリプトは情報を選択して送信し、データベースに保存します。それはすべてうまくいきますが、「ファイルが正常に保存されました」や「エラーが発生しました。管理者に連絡してください」といったユーザーに何らかのテキストを表示できるようにしたいと考えています。Flex:coldfusionファイルに情報を送信した後、URLLoaderからのフィードバックを得る
import flash.net.URLLoader;
import flash.net.URLRequest;
private function save():void
{
var tempString:String = new String;
// Set up a URL request, loader, and variables
var progressOutURL:URLRequest = new URLRequest("saveSchedule.cfm");
var progressOutLoader:URLLoader = new URLLoader();
var progressOutVars:URLVariables = new URLVariables(); // Set the variables to be sent out
for (var i:int = 0; i < wholeProject.length; i++)
{
tempString = new String;
tempString = wholeProject[i].projectTitle + "|" + wholeProject[i].workingTitle + "|" + wholeProject[i].startDate + "|";
for (var j:int = 0; j < wholeProject[i].thisBlock.length; j++)
{
tempString = tempString + wholeProject[i].thisBlock[j].startOffset + "," + wholeProject[i].thisBlock[j].numDays + "," + wholeProject[i].thisBlock[j].role + "," + wholeProject[i].thisBlock[j].sID + "," + wholeProject[i].thisBlock[j].isConflict + "," + wholeProject[i].thisBlock[j].positionType + ";";
}
progressOutVars["project" + i] = tempString;
}
progressOutURL.method = URLRequestMethod.POST;
progressOutURL.data = progressOutVars;
progressOutLoader.load (progressOutURL);
}
をそして、私のColdFusionファイルは以下のとおりである(今私は確認することができますように、それだけでデータが送信された情報のにcfdumpを節約できます):次のように機能AS
私はある
<cfsavecontent variable="toOutput">
<cfdump var="#FORM#" />
</cfsavecontent>
<cffile action="write" file="#GetDirectoryFromPath(GetCurrentTemplatePath())#output.html" output="#toOutput#" />
「progressOutLoader.load(progressOutURL);」という方法はありますか?送信が成功したかどうかを示すブール値などを返します。
私はHTTPServiceを実行する前にURLloaderを使用してそれを行う方法を見つけました。他のものよりも優れていますか? – Brds
説明のリンク:http://stackoverflow.com/questions/278965/flex-urlloader-and-httpservice – Satish