Web services 增加NetSuite SuiteScript中的NLAPIRestURL超时

Web services 增加NetSuite SuiteScript中的NLAPIRestURL超时,web-services,scripting,settimeout,netsuite,Web Services,Scripting,Settimeout,Netsuite,我正在使用NLAPIRestURL方法从NetSuite中的另一个服务器端脚本调用suitelet(webservice)。执行此suitelet需要一分钟以上的时间,这会导致NLAPIRestURL超时 我找不到任何文档化的方法来增加NLAPIRestURL的超时。我想知道这是否可能?我认为没有办法增加这一点,因为这是本机强加的限制 您是否尝试过使用nlapiSetRedirectURL而不是nlapiRequestURL?我将首先查看suitelet的设计,以确保您有效地使用该API。尤其是

我正在使用NLAPIRestURL方法从NetSuite中的另一个服务器端脚本调用suitelet(webservice)。执行此suitelet需要一分钟以上的时间,这会导致NLAPIRestURL超时


我找不到任何文档化的方法来增加NLAPIRestURL的超时。我想知道这是否可能?

我认为没有办法增加这一点,因为这是本机强加的限制


您是否尝试过使用nlapiSetRedirectURL而不是nlapiRequestURL?

我将首先查看suitelet的设计,以确保您有效地使用该API。尤其是加载记录会占用大量资源,而且非常耗时。在许多情况下,最好使用nlapiLookupField检索信息,或者,如果您有许多记录,则使用nlapiSearchRecord一次检索多个记录上的数据

但是,尽管如此,您是否考虑过通过请求组装数据的初始调用和从会话变量或文件缓存检索数据的第二个调用使流程异步?第二个调用可以循环以定期检查以查找数据。对suitelet的每次调用都独立执行,因此第二次回调不会停止第一次请求。您可以参数化第二个请求,只检查会话变量缓存。如果为空,则返回未就绪消息。如果数据可用,请清除缓存并返回数据

另一种方法是suitelet A调用suitelet B并请求准备好的数据。完成后,suitelet B将数据发布到suitelet A,由后者进行处理。当然,您也可以让suitelet B使用suitelet A的代码作为库来处理数据,而无需回调。然而,这可能并不适用于所有用例


你能告诉我更多关于用例的信息吗

在我们的例子中,我们调用suitelet来计算报价单上所有项目的价格。在此过程中,需要评估许多业务规则。如果报价单上的项目超过400个,则会出现问题,然后业务规则执行和价格计算会导致流程超时。超时时,我已在SSP应用程序中,因此无法使用NLAPISETREDICTURL。