0

在我的 AIR 应用程序中,我使用 HTTP 服务和 PHP。

PHP端:set_time_limit(0)

空气侧:httpService.requestTimeout = 0

它不起作用,httpService.requestTimeout = 0,30s 后有超时。FaultEvent 被调度,而 php 仍在运行。PHP 脚本没有问题地结束。

所以我改为httpService.requestTimeout = 99999.

30 秒后不再超时,而是 120 秒后超时。并且调度的不是 FaultEvent,而是 ResultEvent。如果我不停止服务器,PHP 仍在运行并结束!但是我无法通过我的 Air 应用程序知道服务何时完成。

我试图添加 URLRequestDefaults.idleTimeout = 99999000

但还是一样 =/

有人有想法吗?谢谢

4

1 回答 1

0

我也一直在与这个问题作斗争。在您发送()您的请求之前添加此代码段:

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

似乎 AIR 的 Flash Player 中存在一个错误(Flex 使用不同的),它忽略了 HTTPRequest 对象上的 responseTimeout。这会正确设置超时。

于 2013-03-30T06:41:36.097 回答