0

私のAIRアプリでは、PHPでHTTPserviceを使用しています。

PHP側:set_time_limit(0)

エアサイド:httpService.requestTimeout = 0

これは機能しません。httpService.requestTimeout=0の場合、30秒後にタイムアウトが発生します。phpがまだ実行されている間に、FaultEventがディスパッチされます。PHPスクリプトは問題なく終了します。

だから私はに変更しましたhttpService.requestTimeout = 99999

30秒後ではなく、120秒後にタイムアウトは発生しません。そして、ディスパッチされるのはFaultEventではなく、ResultEventです。そして、PHPはまだ実行中であり、サーバーを停止しないと終了します。しかし、サービスがいつ完了したかをAirアプリで知ることはできません。

追加してみました URLRequestDefaults.idleTimeout = 99999000

しかし、それでも同じ= /

誰かアイデアがありますか?ありがとう

4

1 に答える 1

0

私もこの問題と戦ってきました。リクエストを send() する前に、次のコード スニペットを追加します。

URLRequestDefaults.idleTimeout = 120000;  // in millis so this setting would timeout after 120 seconds.

HTTPRequest オブジェクトの responseTimeout を無視する AIR 用の Flash Player (Flex は別のものを使用) にバグがあるようです。これにより、タイムアウトが適切に設定されます。

于 2013-03-30T06:41:36.097 に答える