部署应用程序时找不到模块“google-cloud/pubsub”

dro*_*ers 2 node.js google-cloud-datastore google-cloud-platform google-cloud-pubsub

我目前正在从事一个涉及将数据从 PubSub 移动到 Datastore 的谷歌云项目。这是在作为常驻应用程序运行的谷歌云应用引擎实例上运行的。我首先开始研究数据存储部分,没有遇到任何问题,但是当我尝试包含它时,应用程序在支持 pubsub 时崩溃了。

//including datastore
const Datastore = require('@google-cloud/datastore');
const datastore = Datastore();
//including pubsub
const PubSub = require('@google-cloud/pubsub');
const pubsub = new PubSub();
Run Code Online (Sandbox Code Playgroud)

我不明白的是这两个命令实际上是如何相同的,只有 pubsub 部分崩溃了。google-cloud 文档将此列为将 pubsub 包含到项目中的方法。我也尝试通过 npm 在本地加载包,但没有成功。

可以做些什么来缓解这个问题?提前致谢。

dro*_*ers 6

我已经找到了错误的根源。在 package.json 文件中,我忘记包含 pubsub 作为依赖项。更新后的依赖如下

"dependencies": {
    "@google-cloud/datastore": "1.3.4",
    "@google-cloud/pubsub": "0.19.0",
    "express": "4.16.2"
},
Run Code Online (Sandbox Code Playgroud)

该应用程序现在可以毫无问题地部署。