问题标签 [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 投票
0 回答
173 浏览

google-app-engine - gcloud appengine socketio 总是断开连接

我在 gcloud 上工作,我使用 nodejs 和 socketIO,我正在使用简单的套接字网络、连接、断开连接和 ping。

一切都在我的本地 linux 机器上运行良好。

当我部署到 gcloud 时,它不起作用。一旦我从客户端连接到服务器,我就会断开连接。

我使用端口 8080|| 进程.env.PORT

那有什么问题。

我怎样才能让它在 gcloud 上工作。

谢谢。

0 投票
1 回答
540 浏览

node.js - gcloud socketIO is not working on multi-instances

I am working with socketIO + Nodejs over gcloud app-engine with managed vms. I am facing a problem that when I use manual scaling, the gcloud working well with sockets.

But when I use dynamic scaling, sockets not working at all, I think it doesn't work because of the port forwarding problem with two instances! here's my app.yaml instances handling that works.

When I remove them, sockets not works at all. Is there's any recommendation or a work around. As I am going to serve a very large number of socket requests (2 million/day). If no work around found. What is the specs that I should use for one instance to handle all of these requests, or how can I calculate them?

Thanks.

0 投票
1 回答
241 浏览

javascript - 谷歌数据存储查询中的多项选择引发 ApiError: Precondition Failed error in node

我正在使用以下查询从谷歌数据存储中检索一些实体:

如果我只选择一个属性,上面的代码可以正常工作,即

但是通过多项选择,它会抛出 412 'Precondition Failed' 错误。我的实体如下所示: 实体属性

0 投票
1 回答
116 浏览

node.js - 在计算引擎上托管的 nodeJS 项目中在哪里定义 datastore-indexes.xml?

我们在计算引擎上托管了一个 NodeJS 应用程序,它使用 gcloud-node 连接到谷歌数据存储。简单查询运行良好,但具有多个选择的复杂查询给出“412:前置条件失败”错误。更多细节在“: 谷歌数据存储查询中的多项选择引发 ApiError:节点中的前提条件失败错误

我知道这个错误是由于我没有配置 datastore-indexes.xml 造成的。作为 GCP 世界的新手。您能否帮我在我的项目中定义我的 datastore-indexes.xml 文件。

0 投票
2 回答
332 浏览

google-cloud-datastore - 数据存储事务在保存或删除时是否需要回滚?

dataset.runInTransaction(链接) 的示例中,在 上发生了显式错误处理transaction.get(key,callback)

但是在其他操作上,例如transaction.save(entity)or transaction.delete(key),没有回调,所以真的没有办法处理错误。例如:

这是否意味着不需要显式回滚事务?

0 投票
2 回答
1670 浏览

node.js - 如何解决以下 Google Cloud Platform 部署错误?[错误 3]

我正在关注“将 Cloud SQL 与 Node.js 一起使用”教程(使用 Cloud SQL - Node.js),当我尝试将应用程序部署到 Google Cloud Platform 时出现以下错误。

我尝试四处搜索,但没有找到任何解决此特定错误的方法。任何帮助,将不胜感激。谢谢!

0 投票
1 回答
1113 浏览

google-cloud-storage - 文件上传和列出之间是否有任何延迟?

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

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

或者

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

0 投票
2 回答
7667 浏览

google-cloud-platform - 使用节点 gcloud 创建新项目时出现“调用者没有权限”错误

我正在使用 node.js google api(npm gcloud 包)来创建一个新项目。这是一个测试版 API。我收到一个错误:“调用者没有权限”堆栈:

ApiError:调用者在 Object.parseHttpRespBody (C:\app\bundle \a2\node_modules\gcloud\lib\common\util.js:170:30) 在 Object.handleResp (C:\app\bundle\a2\node_modules\gcloud\lib\common\util.js:110:18) 在C:\app\bundle\a2\node_modules\gcloud\lib\common\util.js:422:12 在 Request.onResponse [as _callback] (C:\app\bundle\a2\node_modules\gcloud\node_modules\retry- request\index.js:117:7) 在 Request.init.self.callback (C:\app\bundle\a2\node_modules\gcloud\node_modules\request\request.js:199:22) 在 Request.emit (事件.js:110:17) 在请求中。(C:\app\bundle\a2\node_modules\gcloud\node_modules\request\request.js:1036:10) 在 Request.emit (events.js:129: 20) 在传入消息处。(C:\app\bundle\a2\node_modules\gcloud\node_modules\request\request.js:963:12)

我已经启用了“谷歌云资源管理器 API”。其他电话工作正常。可能是什么问题?

0 投票
1 回答
138 浏览

gcloud-node - gcloud-node 是否可以设置将文件上传到存储的 http 超时?

我正在上传小文件(通过 Bucket.upload),偶尔我会从谷歌后端得到 503 或 500,但它通常会在 ~5 或 ~10 秒后返回(我认为这是谷歌结束时的超时)。我注意到在 gcloud-node util 中它将请求超时设置为 60 秒,但我认为自己无法找到设置超时的方法。

谢谢!

0 投票
1 回答
1015 浏览

gcloud-node - Google Cloud Storage - 上传期间出错:不允许 gcs-resumable-upload.json 重命名操作

我只是想按照本教程学习如何使用 Node 和 Express 将文件上传到 gcs。但是以下错误不断导致我的应用程序崩溃。通常,我可以在第一次运行时毫无问题地上传一个文件。但是在运行几个请求后我会得到这个错误,即使是不同的文件。当我尝试一次上传 5 个文件时,即使在第一次运行时,此错误也会导致我的应用程序崩溃。我看到该过程正在尝试重命名 .config 文件夹中的文件。这是正常行为吗?如果是这样,是否有解决方法?

Window: v10.0.10586 Node: v4.3.1 Express: v4.13.1

Error: EPERM: operation not permitted, rename 'C:\Users\James Wang.config\configstore\gcs-resumable-upload.json.2873606827' -> 'C:\Users\James Wang.config\configstore\gcs-resumable-upload.json' at Error (native) at Object.fs.renameSync (fs.js:681:18) at Function.writeFileSync as sync at Object.create.all.set (C:\Users\James Wang\gi-cms-backend\node_modules\configstore\index.js:62:21) at Object.Configstore.set (C:\Users\James Wang\gi-cms-backend\node_modules\configstore\index.js:93:11) at Upload.set (C:\Users\James Wang\gi-cms-backend\node_modules\gcs-resumable-upload\index.js:264:20) at C:\Users\James Wang\gi-cms-backend\node_modules\gcs-resumable-upload\index.js:60:14 at C:\Users\James Wang\gi-cms-backend\node_modules\gcs-resumable-upload\index.js:103:5 at Request._callback (C:\Users\James Wang\gi-cms-backend\node_modules\gcs-resumable-upload\index.js:230:7) at Request.self.callback (C:\Users\James Wang\gi-cms-backend\node_modules\request\request.js:199:22) at emitTwo (events.js:87:13) at Request.emit (events.js:172:7) at Request. (C:\Users\James Wang\gi-cms-backend\node_modules\request\request.js:1036:10) at emitOne (events.js:82:20) at Request.emit (events.js:169:7) at IncomingMessage. (C:\Users\James Wang\gi-cms-backend\node_modules\request\request.js:963:12) [nodemon] app crashed - waiting for file changes before starting...

更新:按照@stephenplusplus 在这篇文章中的建议设置 {resumable: false} 后,我不再收到“EPERM:不允许操作”错误。但是,我开始遇到 { [ERROR:ETIMEDOUT] 代码:'ETIMEDOUT ', connection: false } 尝试一次上传多个文件时出错,最大文件大于 1.5mb。其他文件上传成功。

有关更多信息,当文件不大于 ~2.5mb 时,我可以一个一个地上传文件。如果我尝试一次上传 3 个文件,我只能上传不大于 ~1.5mb 的文件。

问题中指定的“不允许操作”问题是否是特定于窗口的问题,并且超时问题是否仅在我设置 resumable = false 后才会发生?

我正在使用带有节点的 express 和 multer。

这是我现在使用的代码: