Flex - 增加PHP服务函数调用的超时

时间:2010-03-26 15:26:29

标签: php mysql flex service timeout

我正在使用Flash Builder 4 Beta 2.我将它连接到PHP服务。我设置它的方式是使用向导,所以我实际上并没有写代码来连接它。该服务如下所示:

package services.flash
{
import mx.rpc.AsyncToken;
import com.adobe.fiber.core.model_internal;
import mx.rpc.AbstractOperation;
import valueObjects.CustomDatatype8;
import valueObjects.NewUsageData;
import mx.collections.ItemResponder;
import mx.rpc.remoting.RemoteObject; 
import mx.rpc.remoting.Operation;
import com.adobe.fiber.services.wrapper.RemoteObjectServiceWrapper;
import com.adobe.fiber.valueobjects.AvailablePropertyIterator;
import com.adobe.serializers.utility.TypeUtility;

[ExcludeClass]
internal class _Super_FLASH extends RemoteObjectServiceWrapper
{      

    // Constructor
    public function _Super_FLASH()
    {
        // initialize service control
        _serviceControl = new RemoteObject(); 

        var operations:Object = new Object();
        var operation:Operation;         

        operation = new Operation(null, "sendCommand");
         operation.resultType = Object;          
        operations["sendCommand"] = operation;

        ...
     }
}

我正在调用的一个函数从MySQL数据库中获取用户。目前大约有30,000名用户。当获取超过22,000行时,服务似乎超时,我收到“在收到确认之前断开通道”错误。如果我从浏览器调用PHP脚本,它会完全取出它们,但是没有任何问题。我已经尝试增加PHP脚本中的超时(这不起作用),但显然这不是问题,因为浏览器能够毫无问题地将它们拉出来。

有没有办法在Flash Builder中增加PHP服务的超时?对于Flash,我有点像菜鸟,所以请描述一下。提前谢谢!

1 个答案:

答案 0 :(得分:1)

所有远程对象都有一个requestTimeout参数。只需将其设置为所需的任何内容即可。

_serviceControl.requestTimeout = 1000;