首页 > 解决方案 > 为什么在heroku中找不到googleapis节点模块?

问题描述

我有一个使用 Node Js 制作的聊天机器人。它使用“googleapis”。当我从笔记本电脑创建服务器时,它工作正常。但我将文件上传到 github 并使用 heroku 作为服务器。我在 heroku 提供的用于访问该应用程序的网址上收到“应用程序错误”。如何修复它。

警告:见https://github.com/lorenwest/node-config/wiki/Strict-Mode 2019-11-20T07:55:39.730004+00:00 应用[web.1]:内部/模块/cjs/loader.js:800 2019-11-20T07:55:39.730026+00:00 应用[web.1] : 抛出错误;2019-11-20T07:55:39.730028+00:00 应用程序 [web.1]:^ 2019-11-20T07:55:39.730030+00:00 应用程序 [web.1]:2019-11-20T07:55:39.730032 +00:00 app[web.1]:错误:找不到模块 'googleapis' 2019-11-20T07:55:39.730034+00:00 app[web.1]:需要堆栈:2019-11-20T07:55: 39.730036+00:00 app[web.1]: - /app/app.js 2019-11-20T07:55:39.730045+00:00 app[web.1]: 在 Function.Module._resolveFilename (internal/modules/ cjs/loader.js:797:15) 2019-11-20T07:55:39.730047+00:00 app[web.1]: 在 Function.Module._load (internal/modules/cjs/loader.js:690:27 ) 2019-11-20T07:55:39.730050+00:00 app[web.1]: 在 Module.require (internal/modules/cjs/loader.js:852:19) 2019-11-20T07:55:39.730052+ 00:00 应用程序[web.1]:在需要(内部/模块/cjs/helpers.js:74:18)2019-11-20T07:55:39.730053+00:00 app[web.1]:在对象。(/app/app.js:23:16) 2019-11-20T07:55:39.730055+00:00 app[web.1]: 在 Module._compile (internal/modules/cjs/loader.js:959:30 ) 2019-11-20T07:55:39.730057+00:00 app[web.1]: 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10) 2019-11-20T07 :55:39.730059+00:00 app[web.1]: 在 Module.load (internal/modules/cjs/loader.js:815:32) 2019-11-20T07:55:39.730061+00:00 app[web .1]:在 Function.Module._load (internal/modules/cjs/loader.js:727:14) 2019-11-20T07:55:39.730063+00:00 app[web.1]:在 Function.Module。 runMain (internal/modules/cjs/loader.js:1047:10) { 2019-11-20T07:55:39.730065+00:00 app[web.1]: 代码: 'MODULE_NOT_FOUND', 2019-11-20T07:55 :39.730067+00:00 app[web.1]:requireStack:['/app/app. js'] 2019-11-20T07:55:39.730069+00:00 app[web.1]: } 2019-11-20T07:55:39.737402+00:00 app[web.1]: npm 错误!代码 ELIFECYCLE 2019-11-20T07:55:39.737824+00:00 app[web.1]: npm ERR!错误号 1 2019-11-20T07:55:39.739094+00:00 应用程序 [web.1]:npm 错误!messenger-get-started@1.0.0 开始:node app.js 2019-11-20T07:55:39.739328+00:00 应用程序 [web.1]:npm 错误!退出状态 1 2019-11-20T07:55:39.739554+00:00 app[web.1]: npm ERR! 2019-11-20T07:55:39.739763+00:00 应用 [web.1]:npm 错误!在 messenger-get-started@1.0.0 启动脚本中失败。2019-11-20T07:55:39.739994+00:00 应用程序 [web.1]:npm 错误!这可能不是 npm 的问题。上面可能有额外的日志输出。2019-11-20T07:55:39.747500+00:00 app[web.1]: 2019-11-20T07:55:39.747681+00:00 app[web.1]: npm ERR!此运行的完整日志可在以下位置找到:2019-11-20T07:55:39.747852+00:00 app[web.1]: npm ERR!
/app/.npm/_logs/2019-11-20T07_55_39_740Z-debug.log 2019-11-20T07:55:39.842413+00:00 heroku[web.1]:状态从开始变为崩溃 2019-11-20T07:55 :39.831194+00:00 heroku[web.1]: 进程以状态 1 退出 2019-11-20T08:47:20.684024+00:00 heroku[router]: at=error code=H10 desc="App crashed" method= GET path="/" host=mukupukuu.herokuapp.com request_id=9bf7f838-97ee-4776-9517-b9c0b530241d fwd="49.244.16.204" dyno= connect= service= status=503 bytes= protocol=https 2019-11-20T08 :47:32.344155+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=mukupukuu.herokuapp.com request_id=ace83680-39e1-489d -a50c-b1c6811f24ce fwd="49.244.16.204" 测功机=连接=服务=状态=503字节=协议=https

标签: node.jsherokunpm

解决方案


确保在 package.json 中包含 GoogleApi npm 包,这有助于 Heroku 在部署应用程序的服务器上获取和安装所需的依赖项。

您可以手动将包和版本添加到package.json

或者

更好的选择是运行npm install --save googleapis


推荐阅读