任何Dropbox API调用出错(node.js) - “错误:getaddrinfo EAI_AGAIN api.dropboxapi.com:443"

时间:2016-10-13 10:14:58

标签: javascript node.js dropbox-js

我正在尝试使用Node.js在我的服务器端设置Dropbox。我使用官方文档编写了基本代码来执行此操作,使用dropbox.com生成的访问令牌(直到我开始工作)。我使用的代码如下所示,是http://dropbox.github.io/dropbox-sdk-js/index.html代码的变体。

'use strict';
var express = require('express');
var router = express.Router();
var Dropbox = require('dropbox');
router.post('/testDropbox', function(req, res) {
  console.log(req.body.dbxAccessToken);
  var dbx = new Dropbox({ accessToken: req.body.dbxAccessToken});
  console.log(dbx);
  dbx.filesListFolder({ path: ''})
    .then(function (response) {
      console.log(response);
      res.send(repsonse);
    })
    .catch(function (err) {
      console.log(err);
      res.send(err);
    })
  });

此捕获的错误显示“错误:getaddrinfo EAI_AGAIN api.dropboxapi.com:443”

我是Node.js的新手,所以我希望它可能在设置中遗漏了一些简单的东西。 此外,我在一个使用NTLM的代理服务器后面,看到一个错误“443”,它确实在我脑子里响起了一些警钟。

2 个答案:

答案 0 :(得分:0)

EAI_AGAIN
    The name server returned a temporary failure indication.  Try again later.

您的dns有任何服务器端错误或问题。

<强> @edit: api.dropboxapi.com上存在ssl证书问题。您可以在use 'use strict';之后添加代码顶部来禁用ssl检查:

process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";

答案 1 :(得分:0)

您的代理可能阻止了来电

如果您可以绕过代理,请尝试此操作以查看代理是否导致问题。 不幸的是,许多公司不允许人们绕过代理,因此您可能需要与负责此类事情的人员交谈以寻求帮助。

我使用的解决方法

我现在使用连接到外部路由器的WiFi加密狗来绕过代理。我的代码,如问题所示,按预期工作,没有错误。