반응형
서버의 로그을 살펴보던 도중 아래와 같은 에러 문구가 있는것을 발견했다.
(node:15479) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security
and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(),
or Buffer.from() methods instead.
해당 에러가 뜨는 이유와 더이상 뜨지 않게 코드를 리팩토링해보자.
환경
node.js: 16.x
원인
원인은 기존 코드에서 버퍼를 생성할때 아래와 같은 코드로 생성하고 있기 때문이였다.
const testBuffer = new Buffer('test');
해결
현재 사용하는 node.js 버전에서는 deprecated 되었기 때문에 아래와 같은 방식으로 대체해서 사용해야 한다.
const testBuffer = new Buffer(10) // 기존
const testBuffer2 = Buffer.alloc(10) // 신규
const testBuffer3 = new Buffer('test') // 기존
const testBuffer4 = Buffer.from('test') // 신규
const testBuffer5 = new Buffer('test', 'utf-8') // 기존
const testBuffer6 = Buffer.from('test', 'utf-8') // 신규
위와 같은 코드 형식으로 리팩토링한 후 서버의 에러로그는 사라졌다.
출처
반응형
'Programming > Node.js' 카테고리의 다른 글
[Node.js] NPM에서 NODE_ENV와 DevDependencies 이해하기 (0) | 2023.04.29 |
---|---|
[Mocha] DB 접근 최소화를 위한 Mocha 테스트 코드 작성법 (0) | 2023.04.21 |
[Node.js] Error: bind EADDRINUSE null:80 (0) | 2022.12.08 |
[Node.js] node.js에서 메모리 사용량을 확인하는 방법 (0) | 2022.11.29 |
[Node.js] Node.js에서 base64로 문자열 Encoding, Decoding 하는 방법 (2) | 2022.08.30 |