multer 한글 깨짐 문제 해결

kimkanghyune·2022년 8월 22일
0

Multer엔 한글 이름으로 된 파일을 업로드하면 파일 이름이 박살나는 오류가 존재한다.

multer에서 구문분석기로 사용하는 busboy논리오류 이슈로 생기는 문제며 Multer 1.4.5 이상 버전의 패키지를 사용하면 이 문제가 해결된다.

1개의 댓글

comment-user-thumbnail
2022년 11월 3일

안녕하세요 멀터관련 구글링하다가 정보를 남기고갑니다.

대부분 input type=file 사용해서 multer를 사용하여 fecth 처리를 할텐데

req.file 처리를 할때는 한글이 깨지지 않습니다.

저는 1.4.5 lts 버전을 사용중이고 DB에 파일경로를 저장시킬때 문자가 인코딩되는 문제가 있었습니다.

file.originalname = Buffer.from(file.originalname, 'latin1').toString(
'utf8',
);

다음과같이 버퍼처리를 해서 utf-8로 받으면 정상적인 파일명을 구할 수 있습니다.

저대로 쓰면안되고 공백이 있기때문에 치환을 해주셔야 합니다.

답글 달기