问题标签 [gcloud-node]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
424 浏览

node.js - 您可以使用 gcloud-node 更新元数据吗

我正在使用gcloud-node将文件存储在 Google Cloud Storage 上。我想更新元数据,例如时间戳 ala touch。那可能吗?

0 投票
1 回答
332 浏览

gcloud-node - 如何使用 gcloud-node 设置 Google Cloud Storage ACL?

该库是最近公布的,它比旧的 google api 客户端http://googlecloudplatform.blogspot.jp/2014/09/gcloud-node-google-cloud-platform-client-library-for-nodejs 使用起来要简单得多。 html

0 投票
1 回答
95 浏览

node.js - 添加超过 500 个字符的实体属性/设置未索引

我试图通过将索引值设置为 false 来创建一个属性超过 500 个字符的实体。

我将如何使用带有保存功能的 gcloud-node 库来执行此操作?

谢谢

0 投票
1 回答
1949 浏览

node.js - 在 bucket.createReadStream 中找不到错误

我刚开始在 ExpressJS Web 应用程序中使用 gcloud-node 并遇到了一个看似非常基本的问题,但我无法弄清楚。

我可以上传文件没有问题。我用:

查看我的谷歌开发者控制台,我在我的存储桶中看到了该文件,例如名称:54314eddacd67fc858bf473f/543ba7bb387b56b908f2b1e4.jpg

当我尝试使用该名称下载时,即:

我收到此错误:

uncaughtException: Not Found Error: Not Found at Object.handleResp (/Users/ruairiobrien/Dev/testApp/node_modules/gcloud/lib/common/util.js:168:14) at Bucket.makeReq_ (/Users/ruairiobrien/Dev/testApp/node_modules/gcloud/lib/storage/index.js:580:10) at Request.Connection.req [as _callback] (/Users/ruairiobrien/Dev/testApp/node_modules/gcloud/lib/common/connection.js:251:16) at Request.init.self.callback (/Users/ruairiobrien/Dev/testApp/node_modules/gcloud/node_modules/request/request.js:199:22) at Request.emit (events.js:98:17) at Request.onResponse (/Users/ruairiobrien/Dev/testApp/node_modules/gcloud/node_modules/request/request.js:1160:14) at Request.emit (events.js:117:20) at IncomingMessage.Request.onResponse.strings (/Users/ruairiobrien/Dev/testApp/node_modules/gcloud/node_modules/request/request.js:1111:12) at IncomingMessage.emit (events.js:117:20) at _stream_readable.js:929:16 我已经调试过了,我确定存储桶中存在具有正确名称的文件。

我真的很难过,所以任何帮助将不胜感激。

我也尝试将文件写入我的本地文件系统,而不是在响应中并得到相同的错误。

一个有效的临时(或永久)解决方法是:

解决方法工作正常,但不能帮助我弄清楚为什么 createReadStream 失败,因为它表明文件名和存储桶是正确的。

0 投票
1 回答
733 浏览

node.js - Node.js node-gcloud 同步调用

我正在使用 node-gcloud https://github.com/GoogleCloudPlatform/gcloud-node与 Google Cloud Storage 进行交互。

我正在开发一个 node.js 服务器(我的第一个 node.js 项目)来为客户端提供一小组 API。基本上,当用户上传文件时,API 调用会返回签名的 url 以显示该文件。

getSignedUrl 函数是异步的https://googlecloudplatform.github.io/gcloud-node/#/docs/v0.8.1/storage?method=getSignedUrl我找不到从另一个函数返回该结果的方法。

我已经开始使用 Bluebird 的承诺,但我无法达到目的。这是我的代码:

我认为我错过了它应该如何工作的基础知识,所以任何提示都会受到赞赏。

编辑:

对于第一条评论,我已经修改了我的解决方案:

我不清楚双重回报应该如何工作,但如果我保留回报桶

我得到的是这个输出:

{ url:{ _bitField:0,_fulfillmentHandler0:未定义,_rejectionHandler0:未定义,_promise0:未定义,_receiver0:未定义,_settledValue:未定义,_boundTo:未定义}}

, 如果删除它并保留

我和以前一样不确定。我错过了什么?

0 投票
1 回答
527 浏览

performance - Google Datastore 使用 gcloud-node 速度慢

我正在尝试使用 gcloud-node 调用 Google Datastore,并且对于非常简单的查询,我始终获得大约 400 毫秒的响应时间。Google AppEngine 状态显示该服务目前正在响应大约 10 毫秒,但我从未低于 200 毫秒。

我已经尝试在 Google Compute 实例和本地运行,并且没有任何显着差异(我没有在 Google AppEngine 上运行)。

我做错了什么还是 Datastore 真的这么慢?

这是我用来测试性能的一个简单程序:

我得到以下输出:

我试过用谷歌搜索 Datastore 性能,但除了可追溯到 2011 年的投诉外,我发现的很少。

感谢您的任何指点!

0 投票
1 回答
1680 浏览

node.js - NodeJS Google Storage 无法使用 gcloud 实用程序创建新存储桶

所以我在使用 Node.js 的 gcloud 插件时遇到了一些问题。

我可以通过他们的 GUI 手动创建一个存储桶,然后使用该容器很好地使用谷歌提供的 gcloud 库在我的节点程序中写入文件。

当我尝试创建一个新存储桶时,问题就来了。

这总是返回:

所以我知道它认为我传递了一个“无效参数”,在这条非常有用的消息中说了 3 次......但我使用的存储桶名称对于我的谷歌存储来说是独一无二的。据我所知,它遵循命名约定。

任何见解都是最受欢迎的。

这是我用于设置链接的字符串:

请注意,我在读取和写入通过 GUI 手动创建的存储桶时没有任何问题。只是无法创建新的存储桶。

我还尝试了在所有云存储中应该是全球唯一名称:

编辑:按照 steven 的建议进行 API 测试会产生相同的响应。我使用 oAuth 对浏览器进行了身份验证......与在节点 api 中完成的身份验证略有不同,但结果是相同的。虽然我可能没有在 API 测试器中正确格式化我的请求,但我得到的是:

要求:

回复:

0 投票
3 回答
3607 浏览

node.js - NodeJS gcloud - 使用公共读取属性/自定义缓存过期上传到谷歌存储

我正在尝试使用 gcloud 库(NodeJS)上传到谷歌存储。

我需要启用公共读取属性并将缓存过期时间设置为 5 分钟。

我正在使用这个(简化的)代码:

如何设置适当的 ACL/缓存过期?(我发现了这个但不知道该怎么做: https ://googlecloudplatform.github.io/gcloud-node/#/docs/v0.11.0/storage?method=acl )

谢谢您的帮助

0 投票
0 回答
118 浏览

node.js - 如何禁用 Docker 容器以重新启动`gcloud preview app run`

gcloud preview app run .我用命令启动我的 Nodejs 应用程序。

每次我更新项目中的任何文件时,都会gcloud重新启动 Docker 容器。它总是需要很多时间。

Google Compute Engine Docs中,我找到了restartPolicy配置,但尝试将其添加到 myapp.yaml中,在运行应用程序时会引发错误:

错误:配置无效:AppInfoExternal 类型对象的意外属性“restartPolicy”。

这可能意味着它不应该与谷歌云上的自定义虚拟机一起使用。

我想知道是否有办法告诉gcloud禁用自动 Docker 容器重启,但在需要时以某种方式手动重启?

0 投票
2 回答
654 浏览

publish-subscribe - Google Cloud 上使用 Pub/Sub 的主/从模式

我们想在 Google Cloud 上构建一个主从模式。我们计划为此使用 Pub/Sub(类似于JMS模式)让每个工作人员从队列中获取任务并在完成后确认。

但是,订阅者似乎无法在开始之前收到发送的消息。而且我们不确定如何确保每条消息都由单个“从属”处理。

有没有办法做到这一点?或者谷歌云上的另一种机制?