节点服务器几次工作后停止工作

时间:2019-04-13 15:30:20

标签: javascript node.js express npm

我有明确的设置来为我正在处理的React项目做服务器端渲染,而且似乎在经过一定时间后异常停止工作:

1)服务器启动,成功返回页面

2)我稍微调整了服务器文件,然后重新启动。

3)服务器继续工作

4)进一步调整,然后重新启动

5)即使返回到第1步中使用的文件,服务器也停止工作

6)在删除所有node_modules并重新加载所有依赖项之前,在以后的所有尝试中继续显示附加错误

因此,尽管我目前有一种解决方法,但每次出现这种情况时都要擦除整个依赖关系集远没有效率,而且我担心在部署应用程序时这种行为是否会浮出水面。这是怎么回事,我该如何预防?

我已经确保节点没有在后台或其他任何东西中运行剩余的鬼进程,并且完整的运行日志与错误消息所讲的内容没有太大不同。在这里不确定是否要考虑其他角度。

E:\JsProjects\ssrproj> npm run serve

> ssrproj@0.1.0 serve E:\JsProjects\ssrproj
> cross-env NODE_ENV=production node ./server/index.js

E:\JsProjects\ssrproj\node_modules\convert-source-map\index.js:61
  return SafeBuffer.Buffer.from(json, 'utf8').toString('base64');
                           ^

TypeError: Cannot read property 'from' of undefined
    at Converter.toBase64 (E:\JsProjects\ssrproj\node_modules\convert-source-map\index.js:61:28)
    at Converter.toComment (E:\JsProjects\ssrproj\node_modules\convert-source-map\index.js:65:21)
    at generateCode (E:\JsProjects\ssrproj\node_modules\@babel\core\lib\transformation\file\generate.js:78:76)
    at runSync (E:\JsProjects\ssrproj\node_modules\@babel\core\lib\transformation\index.js:50:51)
    at transformSync (E:\JsProjects\ssrproj\node_modules\@babel\core\lib\transform.js:43:38)
    at Object.transform (E:\JsProjects\ssrproj\node_modules\@babel\core\lib\transform.js:22:38)
    at compile (E:\JsProjects\ssrproj\node_modules\@babel\register\lib\node.js:73:20)
    at compileHook (E:\JsProjects\ssrproj\node_modules\@babel\register\lib\node.js:102:12)
    at Module._compile (E:\JsProjects\ssrproj\node_modules\pirates\lib\index.js:93:29)
    at Module._extensions..js (internal/modules/cjs/loader.js:700:10)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ssrproj@0.1.0 serve: `cross-env NODE_ENV=production node ./server/index.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ssrproj@0.1.0 serve 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!     C:\Users\user\AppData\Roaming\npm-cache\_logs\2019-04-13T15_17_36_311Z-debug.log

1 个答案:

答案 0 :(得分:1)

该错误似乎可能是由于safe-buffer项目中的竞争条件引起的,它似乎是convert-source-map项目的依赖项。其他人有a similar error when using safe-buffer。这是我的建议。尝试之一:

  1. 确保您具有convert-source-map和所有相关项目的最新版本
  2. 避免在生产中使用convert-source-map。