几次成功调用后,Nodejs Node-SOAP ETIMEDOUT

Nodejs Node-SOAP ETIMEDOUT after a few successful calls

我在几次成功调用后收到 ETIMEDOUT 错误... 这是代码:

soap.createClient("./WSDL/test.wsdl", function (err, soapClient)
{
    if (err)
    {
         throw new Error(err)
    };

    bpData.forEach(function (elementOfArray)
    {
        soapClient.service.binding.Update({
             ProductUpload: {
                 ID: elementOfArray.ProductID,
                 newIndicator: 'false',
                 UpdateIndicator: 'true',
                 UpdateDate: dateFormat(new Date(), 'yyydd'),
                 RawData: elementOfArray.RawData1,
                 RawData2: elementOfArray.RawData2
             }
         }, function (err, result)
         {
               if (err)
               {
                   console.log(err);
                   //throw new Error(err);
                } else
                {
                    console.log(JSON.stringify(result));
                    return JSON.stringify(result);
                 }
            }
        );
.....

我已经尝试设置超时参数,但没有任何改变...

谢谢!

forEach 是一个同步函数,但 soapClient.service.binding.Update 是异步函数,这意味着您可以立即对所有请求进行排队。您应该使用 async.js 或创建自己的函数来等待第一个请求完成以转到第二个请求。

谢谢大家!它现在可以使用异步队列来制作它:)! 晚上好