web-dev-qa-db-fra.com

DeprecationWarning: Buffer () est obsolète en raison de problèmes de sécurité et d'utilisabilité. Veuillez utiliser les méthodes Buffer.alloc (), ... à la place

J'ai un projet angular et récemment je lui ai ajouté angular-universal en utilisant la commande suivante:

ng add @nguniversal/express-engine --clientProject {{ name of your project }}

sa construction et son exploitation:

npm run build:ssr && npm run serve:ssr

J'ai eu beaucoup d'erreurs après cela, mais j'ai réussi à le faire fonctionner, mais lorsque j'accède à ma page d'accueil, il écrit ce qui suit dans la console:

(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]

et chaque fois que je rafraîchis la page, il imprime ERROR [Error] à nouveau sans aucun détail, veuillez noter que je n'ai pas de new Buffer() dans mon code, et j'ai suivi les suggestions sur le débordement de pile pour résoudre ce problème mais pas de chance, quelqu'un peut-il aider à comprendre ce qui cause cela?


J'ai résolu le ERROR [Error] En supprimant le TranslateService, mais en ayant toujours la dépréciation

8
Khaled Jamal

Dans le cas où vous utilisez Buffer() dans votre code, remplacez-le simplement par:

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

Ou

new Buffer(string) // Deprecated 
Buffer.from(string) // New

Dans le cas où vous pas utilisez Buffer() partout où vous devez faire ce qui suit:

1) Recherchez toutes les dépendances de votre application (vous pouvez utiliser un outil de recherche en cliquant sur l'icône de recherche dans le IDE votre utilisation actuelle et tapez Buffer())

2) Partout où vous trouvez une Buffer() dans un module ou une dépendance, remplacez-la comme mentionné ci-dessus

11
Abdulrahman Falyoun

Je reçois le même avertissement, cela ne semble rien affecter du tout. J'ai fait la recherche et le remplacement mais devinez quoi, il n'y a rien dans mon code (ni dans la source ni dans le bundle compilé) qui correspond à Buffer () donc je suis assez curieux à ce sujet. J'ai la dernière version LTS du nœud (12.14.1) mais j'ai mis à jour npm vers 6.13.6 Je dois également dire que la version client ne produit pas cette sortie si elle est déployée sur mon serveur de production ou de développement, cela ne se produit que lorsque Version SSR via iisnode, je ne sais pas si cela aide.

1
Sparker73