云函数:dns.resolveTxt()返回ESERVFAIL

时间:2019-01-07 20:35:38

标签: node.js google-cloud-functions

从Cloud Function中的Node的DNS模块调用dns.resolveTxt()时遇到问题(在Node6和Node8上都尝试过)

我正在使用一个启用了计费功能的帐户(Blaze计划上的Firebase),并且dns.lookup()调用按预期工作,因此,我认为这与阻止对外部域的调用无关。

示例代码:

var dns = require('dns');

dns.resolveTxt('google.com', function (err, addresses) {
  console.log(addresses, err);
});

在本地运行时返回正确的结果:

[ [ 'docusign=05958488-4752-4ef2-95eb-aa7ba8a3bd0e' ],
  [ 'facebook-domain-verification=22rm551cu4k0ab0bxsw536tlds4h95' ],
  [ 'v=spf1 include:_spf.google.com ~all' ] ] null

在Cloud Function中执行时,返回以下错误:

{ Error: queryTxt ESERVFAIL google.com
  at QueryReqWrap.onresolve [as oncomplete] (dns.js:213:19)
  errno: 'ESERVFAIL',
  code: 'ESERVFAIL',
  syscall: 'queryTxt',
  hostname: 'google.com'
}

0 个答案:

没有答案