Node.js Node BigQuery软件包--Ubuntu上的enoint错误
我正在尝试使用此处找到的BigQuery包: 安装:Ubuntu14,最新节点,nginx,加上bigquery包及其依赖项 我相信我已经正确设置了它,包括PEM文件,但当我尝试加载关键文件时,gauth出现了一个错误:Node.js Node BigQuery软件包--Ubuntu上的enoint错误,node.js,ubuntu,google-api,google-bigquery,Node.js,Ubuntu,Google Api,Google Bigquery,我正在尝试使用此处找到的BigQuery包: 安装:Ubuntu14,最新节点,nginx,加上bigquery包及其依赖项 我相信我已经正确设置了它,包括PEM文件,但当我尝试加载关键文件时,gauth出现了一个错误: [2014-05-04 02:14:57.008] [ERROR] gauth - { [Error: ENOENT, open './key.mydomain.com.p12.pem'] errno: 34, code: 'ENOENT', path: './k
[2014-05-04 02:14:57.008] [ERROR] gauth - { [Error: ENOENT, open './key.mydomain.com.p12.pem']
errno: 34,
code: 'ENOENT',
path: './key.mydomain.com.p12.pem' }
Error: ENOENT, open './key.mydomain.com.p12.pem'
我运行的只是一个简单的测试脚本,看起来像是这样,所以我已经输出了我的项目ID:
var http = require('http')
, bq = require('bigquery')
, fs = require('fs')
, prjId = 'xxxxxxxxxx'; //you need to modify this
bq.init({
scope: 'https://www.googleapis.com/auth/bigquery',
client_secret: './client_secrets.json',
privatekey_pem: './private.mydomain.com.p12.pem',
key_pem: './key.mydomain.com.p12.pem'
});
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.write('Testing BigQuery... \n');
bq.job.query(prjId, 'select count(*) from publicdata:samples.wikipedia', function(e,r,d){
if(e) console.log(e);
console.log( JSON.stringify(d) );
});
res.end('Done. \n');
}).listen(3000, "127.0.0.1");
console.log('Server running at http://127.0.0.1:3000/');
我尝试过引用不同的文件,使用_dirname,也没有斜杠
有什么想法吗?我也在查看依赖项中的Google代码,但没有弄清楚这一点。34错误意味着“没有这样的文件或目录”。您确定文件key.mydomain.com.p12.pem与您的索引文件存在于同一目录中吗?34错误表示“没有这样的文件或目录”。你确定key.mydomain.com.p12.pem文件与你的索引文件存在于同一目录下吗?啊,找到了答案:我用来生成私钥和公钥的p12文件与我的客户机密不匹配
因此,如果其他任何人遇到此问题,eNONT可能是由于客户端_secrets.json和服务帐户的一组密钥不是一起创建的。啊,我发现:我用来生成私钥和公钥的P12文件与我的客户端_secrets不匹配
因此,如果其他任何人遇到此问题,eNONT可能是由于客户端_secrets.json和服务帐户的一组密钥不是一起创建的。是的。它与app.js位于同一目录中。为了帮助验证,我将文件名改为其他文件名以“破坏”它。。。在这种情况下,我在简单地启动节点服务器时会立即收到一个enoint错误。由于我上面的示例有一个运行良好的节点服务器,并且我只在使用包的包装器进行GoogleAuth库时才得到eNot,因此我认为还有其他问题……是的。它与app.js位于同一目录中。为了帮助验证,我将文件名改为其他文件名以“破坏”它。。。在这种情况下,我在简单地启动节点服务器时会立即收到一个enoint错误。由于我上面的示例有一个运行良好的节点服务器,并且我只有在使用包的包装器进行GoogleAuth库时才得到eNot,因此我认为还有其他一些问题。。。