首页 > 解决方案 > Firebase 云函数突然返回@grpc 模块错误

问题描述

我发现 Firebase Cloud Functions 非常不可靠。

发生了什么

我有一个按预期工作的功能(功能 A),已经部署并且没问题。当我正在构建另一个与 A 无关的(函数 B)时,云函数日志开始报告以下错误:

Error: Cannot find module '@grpc/grpc-js'
at Function.Module._resolveFilename (module.js:548:15)
at Function.Module._load (module.js:475:25)
at Module.require (module.js:597:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/srv/node_modules/google-gax/build/src/grpc.js:37:14)
at Module._compile (module.js:653:30)
at Object.Module._extensions..js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)

也许我搞砸了。所以我删除了功能 B 并再次部署。错误仍然不断出现,功能 A 不再工作。

我如何尝试解决:

什么都没有解决问题。关于我做错了什么的任何想法?以及如何避免这种情况再次发生?

提前感谢您的帮助!

标签: node.jsfirebasegoogle-cloud-functions

解决方案


我无法弄清楚这种行为的原因。

但是,按照 Paul Kinlan 的建议,错误消失了(功能没有任何变化)。

npm install
npm rebuild --build-from-source google-cloud

根据 Doug 在我的问题中的评论,我还执行了一个npm update以确保我拥有所有最新的软件包。

如果有人找出此错误的原因,请记下,以便我们将来避免它。


推荐阅读