質問

Flex RemoteObjectsをいじくり回してきましたが、タイムアウトに関しては動作があまり良くないことがわかりました。

まず、「接続」にタイムアウトを設定する方法がわかりません。 requstTimeout を設定できることは知っています。これは、最初のハンドシェイク後に正しくタイムアウトします…ただし、サーバーがハンドシェイクしない場合、接続はタイムアウトしません(たとえば、サーバーが接続を受け入れてから、何も行わない場合、クライアントはハングしたままになります)。

2番目に、 requestTimeout が発生すると(リクエストのタイミング)、Flexは実際に接続を切断するための手順を実行しません–そこにぶら下がるだけです( RST などはありません)。明らかに、これは少し望ましくありません。タイムアウト後に明示的に接続を切断する方法はありますか?

次のように RemoteObject を使用しています:

<RemoteObject id="foo" endpoint="http://bar" requestTimeout="42">
    <method … />
</RemoteObject>
役に立ちましたか?

解決

faultEvent(タイムアウトによってトリガーされる)をリッスンして、ハンドラーで接続を強制終了できると思います。

ソースに飛び込むことなく、接続タイムアウトを設定する方法もわかりません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top