Angular 弃用警告:由于安全性和可用性问题,Buffer()已弃用。请使用Buffer.alloc()。。。方法取而代之

Angular 弃用警告:由于安全性和可用性问题,Buffer()已弃用。请使用Buffer.alloc()。。。方法取而代之,angular,angular-universal,Angular,Angular Universal,我有一个angular项目,最近我使用以下命令将angular universal添加到该项目中: ng add @nguniversal/express-engine --clientProject {{ name of your project }} 构建和运行it: npm run build:ssr && npm run serve:ssr 这样做之后,我犯了很多错误,但我成功地让它工作了,但当我访问我的主页时,它会将以下内容写入控制台: (node:44714) [

我有一个angular项目,最近我使用以下命令将angular universal添加到该项目中:

ng add @nguniversal/express-engine --clientProject {{ name of your project }}
构建和运行it:

npm run build:ssr && npm run serve:ssr
这样做之后,我犯了很多错误,但我成功地让它工作了,但当我访问我的主页时,它会将以下内容写入控制台:

(node:44714) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
ERROR [Error]
ERROR [Error]
每次我刷新页面时,它会再次打印
ERROR[ERROR]
而不显示任何细节,请注意,我的代码中没有任何
new Buffer()
,我已经按照关于堆栈溢出的建议解决了这个问题,但运气不好,有人能帮我找出原因吗



我已通过删除TranslateService解决了
错误[ERROR]
,但如果您在代码中使用
Buffer()
,请将其替换为:

new Buffer(number) // Deprecated 
Buffer.alloc(number) // New

如果您在任何地方使用
Buffer()
,则必须执行以下操作:

1) 搜索所有应用程序依赖项(您可以通过单击当前使用的IDE中的搜索图标使用工具进行搜索,然后键入
Buffer()


2) 无论您在模块或依赖项中找到一个
Buffer()
,只要按照上面提到的方法将其替换即可

我收到了相同的警告,它似乎根本不会影响任何东西。 我做了find&replace,但是你猜怎么着,我的代码(无论是源代码还是编译包)中都没有与Buffer()匹配的内容,所以我对它很好奇。 我有node的最新LTS版本(12.14.1),但我将npm升级到了6.13.6
我还要说,如果部署到我的生产或开发服务器上,客户端版本不会产生输出,它只在通过iisnode为SSR版本提供服务时发生,我不知道这是否有帮助。

我已经按照您的建议做了,我唯一能看到缓冲区的地方是package-lock.jsonfile@KhaledJamal请告诉我您的nodejs和npm版本Node--版本返回v10.15.1和npm--版本6.8.0我建议您将nodejs和npm更新为最新版本,之后,转到您的项目,删除node_modules文件夹,并通过
npm install
重新安装它以更新,请尝试在运行
server.js
文件时将
--跟踪警告
--跟踪弃用
选项传递给nodejs(您需要修改
服务:ssr
脚本)。这将帮助您确定哪些包会导致problem@David我没有serve:ssr脚本我所做的就是纱线运行serve:ssr,我试着像纱线运行serve:ssr----跟踪警告和纱线运行--trace warnings serve:ssr一样运行它,但没有任何更改,也没有在控制台上打印任何内容,您能建议如何运行跟踪吗?
service:ssr
通常是在
package.json
中定义的脚本。将选项传递给纱线是无用的,您需要将其传递给nodejs@David谢谢你的工作现在我有一个由服务器引起的异常。js@MadhavanSundararaj查看上面的评论,并尝试调试异常,如果您有一个共享,我可能会提供帮助
new Buffer(string) // Deprecated 
Buffer.from(string) // New