标签: gcloud-node

gcloud 错误:ApiError:在新的 util.ApiError 处找不到

任何熟悉此 gcloud 异常的人:

ApiError:在 Object.parseHttpRespBody (/site/node_modules/gcloud/lib/common/util.js:206) 的新 util.ApiError (/site/node_modules/gcloud/lib/common/util.js:128:10) 处找不到:30) 在 Object.handleResp (/site/node_modules/gcloud/lib/common/util.js:146:18) 在 /site/node_modules/gcloud/lib/common/util.js:447:12 在 Request.onResponse [as _callback] (/site/node_modules/gcloud/node_modules/retry-request/index.js:120:7) 在 Request.self.callback (/site/node_modules/request/request.js:187:22) 在请求.emit (events.js:98:17) 在请求。(/site/node_modules/request/request.js:1044:10) 在 Request.emit (events.js:95:17) 在 IncomingMessage 处。(/site/node_modules/request/request.js:965:12) 在 IncomingMessage.emit (events.js:117:20) 在 _stream_read.js:944:16 在 process._tickDomainCallback (node.js:492:13)

它仅出现在生产中(当然)并且目前一致。它曾经定期出现,假设它是 gCloud 的一个小故障,因为它无法在本地重现。它与使用最简单的 gCloud lib 方法的代码部分相关,bucket.upload除了文件之外没有任何参数......这是执行此操作的当前函数:

function uploadToGoogleCloud(filePath, makePublic) {
  var gstorage = gcloud.storage({
    projectId: EXAMPLE_projectId,
    credentials: EXAMPLE_credentials,
  });

  var spBucket = Promise.promisifyAll(gstorage.bucket(EXAMPLE_bucket));

  return spBucket.uploadAsync(filePath).then(function(file) {
    if (makePublic) {
      var fileAsync = Promise.promisifyAll(file);
      return fileAsync.makePublicAsync().then(function() {
        return file; …
Run Code Online (Sandbox Code Playgroud)

upload buckets node.js google-cloud-platform gcloud-node

5
推荐指数
1
解决办法
2883
查看次数

为什么我不能将 ENV 变量与 Firebase 函数一起使用

为什么我不能像使用 Google Cloud Functions 那样使用环境变量?据我了解,Firebase 功能位于 Google Cloud 之上。通过 Firebase 功能,您可以使用环境配置,但并不相同。

我已经完成了这两种实现,但我发现使用谷歌云函数处理环境变量更容易。

也许我只是不知道该怎么做,而且找不到任何文档,所以如果有人能指出我正确的方向,我将不胜感激。如果使用 firebase 函数方式有任何优点,请告诉我。

Google 云函数环境文档

Firebase 函数配置环境文档

firebase gcloud-node google-cloud-functions

5
推荐指数
1
解决办法
4668
查看次数

如何在 App-Engine 上运行的基于 Express 的 Node JS 应用程序中获取远程客户端的 IP 地址

在尝试获取 IP 时,所有标准标头值都包含不正确的值。

req.ip: ::ffff:172.17.0.5
req.headers['x-forwarded-for']: 169.254.160.2
req.socket.remoteAddress: ::ffff:172.17.0.5
Run Code Online (Sandbox Code Playgroud)

所有这些都会导致错误的IP。

google-app-engine node.js express gcloud gcloud-node

3
推荐指数
1
解决办法
5299
查看次数

如何使用node.js为要上载到Google云端存储的文件设置内容类型

我正在编写代码,使用gcloud-node将使用node-fetch获取的文件上传到Google云端存储中的存储桶.

到目前为止一切正常,但我无法找到如何Content-Type在GCloud上设置文件,否则文件下载为application/octet-stream.

这是我到目前为止的代码:

function saveImage(response, destFile) {
  return new Promise((resolve, reject) => {
    if (response.status !== 200) {
      reject(new Error('Bad Response'));
    }

    // How do I set this on the file uploaded to the bucket?
    const contentType = response.headers.get('Content-Type');

    try {
      const file = bucket.file(destFile);
      const writeStream = file.createWriteStream();

      writeStream.on('error', err => {
        reject(err);
      });

      writeStream.on('finish', () => {
        resolve(getPublicUrl(destFile));
      });

      response.body.pipe(writeStream);
    } catch (e) {
      reject(e);
    }
  });
}
Run Code Online (Sandbox Code Playgroud)

node.js google-cloud-storage gcloud-node

3
推荐指数
1
解决办法
1741
查看次数

文件上传和列出之间是否有延迟?

我使用gcloud node v0.24与 Google Cloud Storage 交互。我遇到了上传后立即列表未返回所有已上传文件的问题。

所以问题是 总是Bucket#getFiles在之后列出文件Bucket#upload吗?

或者

上传回调和文件可用(例如可以列出、下载)之间是否有延迟?

google-cloud-storage gcloud-node

2
推荐指数
1
解决办法
1709
查看次数

使用Node.js GCloud API删除Google Cloud Storage中的文件夹

我正在使用gcloud nodejs apiGoogle Cloud Storage。我可以分别保存/删除/存在文件,但是我找不到使用删除文件夹甚至列出文件夹中文件的方法gcloud nodejs api

我见过有人说,GCS中的文件夹层次结构不是真正的树结构,而只是名称。因此,我尝试使用通配符来匹配文件名字符串,但失败了。

我想知道是否有任何办法可以做到。如果没有,我应该使用什么工具?

node.js google-cloud-storage gcloud-node

2
推荐指数
1
解决办法
3262
查看次数

如何使用gcloud-node获取Google云端存储文件的URL?

使用gcloud Node库,如何获取云存储桶中文件的URL?

考虑以下文件对象的即时消息:

let bucket = gcs.bucket(`aBucket`)
let cloudFile = bucket.file(`aFile`)
Run Code Online (Sandbox Code Playgroud)

我想获取下载的URL cloudFile.

node.js google-cloud-storage google-cloud-platform gcloud-node

1
推荐指数
1
解决办法
2565
查看次数