ENOENT錯誤我想使用這裏找到大量查詢包: https://www.npmjs.org/package/bigquery節點BigQuery的包 - 在Ubuntu
設置:Ubuntu的14,最新的節點,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: './key.mydomain.com.p12.pem' }
Error: ENOENT, open './key.mydomain.com.p12.pem'
我運行一個簡單的測試腳本,看起來像這樣(我Xxxx'd了我的項目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代碼,但只是沒有考慮到這一點。
沒錯。它與app.js位於同一個目錄中。爲了幫助驗證,我將文件名更改爲「破壞」它的其他內容......在這種情況下,只需啓動節點服務器即可立即發生ENOENT錯誤。由於我上面的示例有一個運行良好的Node服務器,並且在使用Google Auth庫的封裝包裝器時我只獲得ENOENT,所以我認爲其他問題是錯誤的... – mungojerie