問題タブ [httpservice]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-flex - HTTPService Result - 指定された名前のアイテムの数を確認しています
HTTPService とそれが返すデータについて質問があります。
この XML を考えてみましょう。
ご覧のとおり、 Photoの 2 つのインスタンスがあり、それは HTTPService を使用して取得されます。同じ HTTPService の結果イベントで、返されたPhoto.lastResult
という名前のインスタンスの数を数えてもらいたいと思います。
これはばかげた質問ですが、Adobe Docs のどこにも見つかりません。
もちろん、どんな助け、ヒント、提案も大歓迎です。
メドワ
それでも0を返すので、盲目か何かでなければなりません。
ここに何か欠けていますか?
MXML
ActionScript
apache-flex - Flex を使用して Freshbooks API に対して認証する方法は?
Flex (FLex Builder 3.0) は初めてで、基本的に HTTPS 経由で Freshbooks API (www.freshbooks.com) に対して認証する単純なアプリケーションを作成しています。他に何も送信せずに。
これが私がこれまでに持っているものです:
問題は、ボタンをクリックすると、FreshBooks サービスへのユーザー名とパスワードを要求するポップアップがブラウザーに表示されることです。
ユーザー名 (freshbooks によって提供される認証トークン) が、ブラウザーではなく Flex 自体からサーバーに送信されるようにコーディングするにはどうすればよいですか? 私の期待される結果は、ブラウザからのポップアップがなく、freshbooks サーバーが返すものはすべてテキスト領域 (txtArea1) に表示されることです。
注: 認証トークンをブラウザーのポップアップに入力すると、アプリケーションは出力をテキスト領域に正しく表示できます。
ありがとう。
xml - XMLをFlexのカスタムクラスに逆シリアル化しますか?
を使用して、手動で XML をチェックしたり、クラスを作成したりせずに、XML ファイルを Flex のクラスにデシリアライズすることは可能HttpService
ですか?
編集:もう少し詳しく説明しました。
以下を含む XML ファイルがあります。
Flex では、これを Project クラスにシリアル化する必要があります。
XML は HTTPService でロードされます。
xml - Flex:ユーザーがアクセスできないXMLファイルをロードする
現在、多肢選択問題のデータを含むXMLファイルを読み込んでいるFlexアプリがあります。ユーザーがhttp経由でこのファイルにアクセスできないようにしたいのですが、HTTPServiceを使用してファイルをロードすると(現在行っていること)、XMLファイルをpublic_htmlフォルダー内に配置する必要があるようです。私たちのサーバー。
ユーザーがアクティビティビューアでXMLファイルを表示したり、http://経由でアクセスしたりできないように、XMLファイルをロードするためのより良い方法はありますか?
ありがとう!
apache-flex - 動的HTTPServiceAsynchronousからデータを取得して、Advanced DataGridFlexにデータを入力します
次のフィールドを持つ高度なデータグリッドにデータを入力する必要があります。大陸->州->社会->実際の値->推定値金融市場をシミュレートしたいので、非同期リクエストで値の一部を変更する必要がありますHTTPServiceから; あなたはそうするためのアイデアを持っていますか?ありがとうございました。必要に応じて.asファイルを投稿しますが、FlexBuilderによって自動的に生成されます。
クライアント側のFlex/Airアプリケーションのコードは次のとおりです。
これが.asファイルです。
/ ***UIロジックと一部のデータアクセスコードを定義するActionScriptソースファイル。*このファイルは、mx:Scriptタグを使用してメインアプリケーションのMXMLファイルにリンクされています。*このファイルのほとんどの関数は、MXMLで定義された*イベントハンドラーによって呼び出されます。 /flash.eventsをインポートします。;
import mx.collections.ArrayCollection; import mx.controls.AdvancedDataGrid; import mx.controls.Alert; import mx.controls.advancedDataGridClasses.AdvancedDataGridColumn; importmx.events。*; import mx.managers.CursorManager; import mx.rpc.AsyncToken; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; import mx.rpc.http.HTTPService;
//サーバーエンドポイントURLの定数定義を含めるinclude"provaconfig.as";
/ ** *ゲートウェイ:これはサーバー側のphpコードとの通信レイヤーです* / private var Gateway:HTTPService = new HTTPService();
/***配列コレクションはグリッドで使用する行を保持します*/[Bindable] public var dataArr:ArrayCollection = new ArrayCollection();
/***注文する列。これは、ユーザーが*グリッド列ヘッダーをクリックするたびに更新されます。* headerRelease = "setOrder(event);"を参照してください *mxmlファイルのDataGridインスタンス化*/private var orderColumn:Number;
/***データベーステーブル内のフィールドのリスト*応答をハッシュに解析するために必要*/private var fields:Object = {'continente':String、'stato':String、'societa':String、'actual' :Number、'estimate':Number};
/ ***mxmlのロードが完了すると実行されます。RestGatewayを初期化します。* /プライベート関数initApp():void {
}
/***主キー列の編集を禁止します。* @param e DataGridEventには、グリッドの行と列に関する詳細が含まれます*ユーザーがクリックした場所* / private function editCellHandler(e:AdvancedDataGridEvent):void {/ ** *ユーザーが主キー列をクリックした場合は、編集を停止します* / if(e.dataField == "continenteCol"){e.preventDefault(); 戻る; }}
/***「フィルター」ボタンのハンドラーをクリックします。*別のフィルターを設定する場合は、コレクションを更新し、新しいデータをロードします* / private function filterResults():void {fill(); }
/***ユーザーがエントリの編集を終了したときにトリガーされるイベントハンドラー*「更新」サーバーコマンドをトリガーします*/private function editCellEnd(e:AdvancedDataGridEvent):void {var dsRowIndex:int = e.rowIndex; var dsFieldName:String = e.dataField; var dsColumnIndex:Number = e.columnIndex;
}
/***「update」サーバーコマンドの結果ハンドラー。*エラーを警告するか、問題がない場合は何もしません-データはすでにグリッドで更新されています* / private function saveItemHandler(e:Object):void {if(e.isError){Alert.show( "Error: "+ e.data.error); } else{}
}
/***データグリッドのdragHeaderハンドラー。このハンドラーは、ユーザーが*データグリッドのヘッダー列をクリックしたときに実行されます*グローバルorderColumn変数を更新し、TableCollectionを更新します* @parameventDataGridEvent列に関する詳細*/private function setOrder(event:AdvancedDataGridEvent):void {orderColumn = event.columnIndex; var col:AdvancedDataGridColumn = dataGrid.columns [orderColumn]; col.sortDescending =!col.sortDescending;
}
/ ** *「追加」状態の「保存」ボタンのハンドラーをクリックします*フォーム内の情報を収集し、コレクションに新しいオブジェクトを追加します / private function insertItem():void {var parameters: = {"method" :"Insert"、 "continente":continenteCol.text、 "stato":statoCol.text、 "societa":societaCol.text、 "actual":actualCol.text、 "estimate":estimateCol.text};
}
/***挿入呼び出しの結果ハンドラー。*存在する場合はエラーを警告します*呼び出しが正常に行われた場合は、リストに戻り、データを更新します* / private function insertItemHandler(e:Object):void {if(e.isError){Alert.show( "Error :"+ e.data.error); } else {goToView(); 塗りつぶし(); }
}
/***データを更新するための一般的なユーティリティ関数*フィルタリングと順序付けを取得してから新しいサーバー呼び出しをディスパッチします**/ private function fill():void {/***順序パラメーターを検索します*/var desc:Boolean = false; var orderField:String ='';
}
/***塗りつぶし呼び出しの結果ハンドラー。*エラーの場合はユーザーに表示し、そうでない場合はarraycollectionに新しいデータを再入力します* / private function fillHandler(e:Object):void {if(e.isError){Alert.show( "Error:" + e.data.error); } else {dataArr.removeAll(); for each(var row:XML in e.data.row){var temp: = {}; for(var key:String in fields){temp [key +'Col'] = row [key]; }
}
/***リスト内の「削除」ボタンのハンドラーをクリックします*アクションを確認してdeleteClickHandler関数を起動します*/private function deleteItem():void {
}
/ ** * [削除]ボタンを押すと、[確認]ダイアログのイベントハンドラー機能が発生します。※押されたボタンが「はい」の場合、商品は削除されます。*@paramオブジェクトイベント*@returnnone / private function deleteClickHandler(event:CloseEvent):void {if(event.detail == Alert.YES){var vo: = dataGrid.selectedItem;
}
public function deleteHandler(e:*):void {if(e.isError){Alert.show( "Error:" + e.data.error); } else {var continente:Number = parseInt(e.data.toString()、10); for(var index:Number = 0; index <dataArr.length; index ++){if(dataArr [index] .continenteCol == continente){dataArr.removeItemAt(index); 壊す; }}}}
}
/ ***xml応答を逆シリアル化します*エラーケースを処理します**@parameResultEventサーバー応答と接続に関する詳細 /publicfunction deserialize(obj:、e:): {var toret:Object = {};
}
/ ** *ゲートウェイの結果ハンドラー*結果を逆シリアル化し、REALイベントハンドラーを呼び出します*(doRequest関数でリクエストを行うときに設定されます)* * @parameResultEventサーバーの応答と接続 /パブリック関数の詳細resultHandler(e:ResultEvent):void {var topass: = deserialize(e.result、e); e.token.handler.call(null、topass); }
/***この接続のフォールトハンドラー**@parameFaultEventエラーオブジェクト*/public function faultHandler(e:FaultEvent):void {var errorMessage:String = "Connection error:" + e.fault.faultString; if(e.fault.faultDetail){errorMessage + = "\ n \ n追加の詳細:" + e.fault.faultDetail; } Alert.show(errorMessage); }
/***ゲートウェイインスタンスを使用してサーバーにリクエストを送信します**@parammethod_name文字列サーバーディスパスで使用されるメソッド名*@paramparametersポストで送信するためのオブジェクト名と値のペア*@paramcallback呼び出しが完了します*/public function doRequest(method_name:String、parameters:Object、callback:Function):void{//メソッドをパラメーターリストに追加しますparameters['method'] = method_name;
}
/***ユーザーが[作成]ボタンをクリックしたときにハンドラーをクリックします*[更新]キャンバスをロードします。* / public function goToUpdate():void {applicationScreens.selectedChild = update; }
/***「表示」キャンバスをロードします。* / public function goToView():void {applicationScreens.selectedChild = view; }
プライベート関数adg_itemClick(e:ListEvent):void {var item:Object = AdvancedDataGrid(e.currentTarget).selectedItem; e.target.expandItem(item、!e.target.isItemOpen(item)、true);
}
apache-flex - FLEX Cairngorm コマンド...奇妙な動作
cairngorm コマンドの実行をシリアル化する際の問題を解決しようとしているときに、イベントのディスパッチを完全にバイパスして、実行したいコマンドを単純にインスタンス化し、それを execute メソッドと呼びました。このメソッドには、HTTPService.send を実行する ServiceUtils を呼び出すデリゲートへの呼び出しがあります...
さて、これらのコマンドは、私が呼び出した正確な順序で実行する必要があります。また、サーバー (RAILS) は 1 つしかないため、すべての要求が同じ順序で返されるはずです。これはそうではありません..実行ごとに順序が異なります..なぜ?!?
apache-flex - HTTPService AsyncToken と AsyncResponder の例
AsyncToken と AsyncResponder によって非同期的に呼び出される HTTPService を実装する Flex アプリケーションの例はどこにありますか? 前もって感謝します
httpservice は、特定の頻度で次のような文字列を送信します。
行#列#番号#行#列#番号#行#列#番号#....
編集されたコード:
apache-flex - フレックス:HTTPServiceの読み込みにかかる時間
FlexでHTTPServiceを使用してXMLをロードしています。読み込みに時間がかかります。ですから、トラブルシューティングをしたいのですが、何が違いを生んでいるのかを知るためには、リクエストの時間を計り、どれくらいの時間がかかるかを知る必要があります。
httpサービスの時間を計測してHTTPService.send()からHTTPService.resultまでにかかった時間を確認する最良の方法は何ですか
ありがとう!
database - Livecycle、BlazeDSなどのないAMFチャネル
HTTPServiceからのリアルタイムの非同期要求を行うために、Adobe Livecycle、BlazeDsなどを使用せずにFlex HTTPServiceクライアントアプリケーションでAMFチャネルを使用することは可能ですか?