我在 VPS 上运行我的项目并收到错误,但 http://localhost:3000/它工作,尝试卸载并安装 npm mongodb 但它不起作用。
删除 require('mongodb') 它在 VPS 上工作,但我不能使用 mongodb。
/Rest_api_2/node_modules/whatwg-url/dist/encoding.js:2
const utf8Encoder = new TextEncoder();
^
ReferenceError: TextEncoder is not defined
at Object.<anonymous> (Rest_api_2/node_modules/whatwg-url/dist/encoding.js:2:21)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (Rest_api_2/node_modules/whatwg-url/dist/url-state-machine.js:5:34)
at Module._compile (internal/modules/cjs/loader.js:778:30)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! rest_api_2@1.0.0 start: `node app.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the rest_api_2@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2021-08-29T14_07_03_848Z-debug.log
最佳答案
我有临时解决方案我不知道它是错误还是什么但是为了让你的代码现在工作我所做的是在 package.json 中
我将 Mongoose 版本更改为 5.13.7
像这样的东西
"mongoose": "^5.13.7"
然后删除 node_modules 并运行命令 npm install 以重新安装具有旧版本的 node_modules 然后我的代码运行编辑:正如我所说的临时解决方案,我通过谷歌搜索找到了永久解决方案,实际上是使用新版本的 mongoose 需要新版本的 nodejs 所以你只需要更新 Node js 和 npm 使其工作,它的永久解决方案不只是降级并且使用它是从 mongoose 版本 5.13.7 到最新版本的临时使用,他们修复了一些漏洞,所以我建议最好的方法是更新 node js 和 npm 并使用最新的 mongoose 版本。
关于node.js - 使用 Vps 运行 Project mongodb 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68973754/