Tag: 谷歌云存储

BigQuery Node.js api创build外部表

我正尝试使用node.js API从Google云端函数创build外部表格。 该function将从GCS桶更改中触发。 我可以创build一个本地表,但不能创build一个外部表。 在这里用于导入的node.js api中,configuration.load元数据没有设置来将其指定为外部表。 这里是我的代码本地表创build到现在。 我的问题是“如何使用Node.js Api为GCS存储桶创build外部表” const projectId = "N" const bigquery = BigQuery({ projectId: projectId }); const storage = Storage({ projectId: projectId }); const dataset = bigquery.dataset("dataset"); const table = dataset.table("test_data"); const bucket = storage.bucket("my-bucket"); const file = bucket.file("2017/03/02/*"); let job; // Imports data from a GCS file into a table […]

Google Cloud Storage(Js),asynchronous/等待和云function错误

这是现在解决在GOOGLE侧 Google Cloud NodeJs库现在已经集成了修复程序。 保持这个问题仅供参考。 原文问题 我希望我的代码干净(er),并使用Typescript&async /等待编写访问Google云端存储的Cloud Functions。 我的tsconfig.json一些重要部分: { "compilerOptions": { "declaration": false, "target": "es6", "module": "commonjs", "noImplicitAny": true, "removeComments": true, "noUnusedLocals": true, "moduleResolution": "node", "sourceMap": false, "typeRoots": [ "node_modules/@types" ], "lib": [ "es2016" ], "emitDecoratorMetadata": true, "experimentalDecorators": true, "outDir": "./" } } 我遇到的第一个错误是ECONNRESET ,我正在打这样的电话,可能是这样的: await bucket.file(path).download({ destination: tempFilePath }) 我已经算出了function的其余部分没有等到这一行完成,整个function执行结束之前,文件从GCS下载到临时path。 所以我把这一节放到try / […]

Google云端存储忽略分隔符

我试图从谷歌云存储检索JSON文件。 JSON文件与其对应的audio文件存储在相同的文件夹中,如下所示: bucket folder1 audio.wav audio.json folder2 audio.wav audio.json 我正在使用nodejs,并调用云存储,如下所示: bucket.getFiles({ delimeter: 'audio' //should be preventing loading of audio files but it isnt }).then((data) => { console.log(data) }).catch((error) => { console.log(error) }) 我有一种感觉,这可能与Google如何处理文件夹有关,但我不确定。 这里是如何存储文件的第一个地方: const storage = require('@google-cloud/storage')(); const filename = `recordings/${path.parse(req.body.RecordingUrl).name}/audio.wav`; const file = storage .bucket(config.RESULTS_BUCKET) .file(filename) 这会导致某种types的string将audio文件分配一个唯一的ID作为文件夹名称,然后附加/audio.wav ,并以某种方式将云存储识别为文件夹。 只是一个猜测,但不知道如何解决,如果是这样的话。 任何人都知道我可能做错了什么?

如何访问谷歌云存储中的对象?

我试图build立一个应用程序,将访问我的谷歌云存储中的文件,而桶是私人的。 文档不清楚如何做,以便从服务器访问存储桶。 我有他们提供的JSON文件。 我打算使用nodejs公开桶上的文件,但我不知道如何授权请求到桶。 我正在使用axios。 我是否创build一个API键或使用一个键作为查询string? 一些帮助将不胜感激!

从谷歌存储的Firebase下载云function

我有一个在firebase中的集合,看起来像这样: people: -KuM2GgA5JdH0Inem6lGaddclose appliedTo: "-KuM1IB5TisBtc34y2Bb" document: "docs/837c2500-9cbe-11e7-8ac1-17a6c37e2057" name: "Test Testerson" 文档节点包含存储桶中文件的path。 是否有可能使用http的firebase函数将这个文件下载到客户端。 根据节点/stream向客户端的Stream文件,我应该能够stream式地快速响应。 谷歌存储readstream会为此工作? 谢谢, 本

使用Google云端存储存储的图片的属性

我正在使用NPM文档将图像上传到Google云端存储 app.post('/test', upload.single('image'), function (req, res, next) { }); let bucket = gcs.bucket('bucket-name'); bucket.upload(req.file.path, function(err, file) { if (err) { throw new Error(err); } console.log(file); }); console.log(req.file); // req.body will hold the text fields, if there were any }) 有什么办法可以指定我上传的文件的自定义名称和文件types? 在我的情况下,它应该是一个图像。

如何使用Node API从Google Cloud Storage返回指定的图像大小?

我正在使用云存储,并且运行良好,我只是不想每次都返回完整大小的图像。 我想知道是否有一种方法来指定一个宽度来调整图像的大小,当我请求它? 这是工作代码。 我只需要返回较小的图像,比如300px宽(保持原始高宽比)。 这个数字可能会改变或波动,所以我不想保存大量不同的版本,除非我绝对必须。 var fileName = "Image.png"; var stream = bucket.file(fileName).createReadStream(); res.writeHead(200, { 'Content-Type': imageInfo.mime_type }); stream.on('data', function (data) { res.write(data); }); stream.on('error', function (err) { console.log('error reading stream', err); }); stream.on('end', function () { res.end(); }); 我发现这个网站解释了如何在PHP中做到这一点,所以我猜可能有一种方法在节点中做到这一点? https://cloud.google.com/appengine/docs/standard/php/googlestorage/images

如何使用NodeJS列出GCS存储桶中的目录

如果您使用的是NodeJS GCS客户端库,并希望列出您的存储桶中的目录,那么您如何执行此操作?

不能过期使用node.js创build的Google云存储对象的SignedURL

使用node.js创buildGoogle云存储对象的signedURL 这是我的代码 var crypto = require("crypto"); var fs = require("fs"); var expiry = new Date().getTime() + 3600; var key = 'the_target_file'; var bucketName = 'bucket_name'; var accessId = 'my_access_id'; var stringPolicy = "GET\n" + "\n" + "\n" + expiry + "\n" + '/' + bucketName + '/' + key; var base64Policy = Buffer(stringPolicy, "utf-8").toString("base64"); var […]

使用nodejs gcloud api删除Google云端存储中的文件夹

我正在使用gcloud nodejs api访问Google云端存储。 我可以单独保存/删除/存在文件,但我没有find一种方法来删除文件夹,甚至使用gcloud nodejs api列出文件夹中的文件。 我见过有人说GCS中的文件夹层次结构不是一个真正的树结构,而只是名字。 所以我试图使用通配符匹配文件名string,这没有成功。 我想知道有没有办法做到这一点。 如果不是,我应该使用什么工具?