PouchDB ETIMEDOUT错误

时间:2016-09-16 15:00:03

标签: javascript ionic-framework couchdb pouchdb cloudant

所以我们一直在构建一个使用couchDb / cloudant和Pouchdb作为我们的驱动程序客户端(离子框架)和服务器端(节点)的应用程序。

最近我们在连接到遥控器时遇到了错误,这些错误似乎随机出现,只是暂时重新启动应用程序或打开新浏览器消失。

  

update-data.service.js:38错误:ETIMEDOUT(...)(匿名函数)@   update-data.service.js:38processQueue @ angular.js:16383(匿名   函数)@ angular.js:16399 $ eval @ angular.js:17682 $ digest @   angular.js:17495(匿名函数)@   angular.js:17721completeOutstandingRequest @ angular.js:5964(匿名   功能)@ angular.js:6243

在隐身浏览器中运行虽然暂时删除了问题(或单独的浏览器),但错误总是会回来。

启动和停止沙发似乎也暂时解决了这个问题。

当作为应用程序(包括android和ios)运行时,问题出现无法预测,云端作为后端

还没有在node.js服务器上看到它。

我们可以探索的任何可能的途径或方向?

1 个答案:

答案 0 :(得分:0)

当无法完成对远程数据库的HTTP请求时,PouchDB会出现这些ETIMEDOUT错误,可能是因为互联网连接不良。

如果您的连接中存在起伏,您可以尝试在引发超时错误之前增加持续时间(see the options for remote databases in the doc):

var remote = new PouchDB('address', {
  ajax: {
    timeout: 60000,
  }
});

在上面的示例中,仅当HTTP请求无法完成60秒时,才会抛出超时错误。