-
카테고리
-
세부 분야
풀스택
-
해결 여부
미해결
path변수가 온 곳
20.05.28 15:32 작성 조회수 195
1
var storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, "uploads/");
},
filename: (req, file, cb) => {
cb(null, `${Date.now()}_${file.originalname}`);
},
fileFilter: (req, file, cb) => {
console.log(path,'at File Filter')
const ext = path.extname(file.originalname);
if (ext !== ".mp4") {
return cb(res.status(400).end("only jpg, png, mp4 is allowed"), false);
}
cb(null, true);
},
});
이 곳에서 path의 정체를 출력해보고 싶었는데 파일 업로드를 해도 출력이안 됩니다.혹시 path가 어디서 왔는지 알 수 있을까요?
그리고 오픈소스를 사용할 때 저는 사용법을 30분씩 봐도 모르겠던데 이거 정상인가싶기도 하고 제가 뒤떨어지는가 걱정도 되네요.
답변을 작성해보세요.
3
ycg02116
2020.05.28
안녕하세요, 저도 같은 강의를 듣는 수강생입니다.
질문자님의 질문을 보고 저도 궁금해져서 찾아봤어요!
9번 줄 보시면 미리 const path라는 변수에 path 모듈을 요청해서 선언해두었기 때문에 fileFilter에서도 사용이 가능한 부분이구요
path 모듈은 파일 및 디렉토리 경로 작업을위한 유틸리티를 제공한다고 하네요
path 자체를 콘솔로그로 찍으니까 아래처럼 드네요!
path의 function의 종류들에 대한 안내가 아닐까 싶습니다.
그래서 path.extname(/*파일 경로*/)을 하면 해당 파일의 확장자 정보를 가져올 수 있어서
let ext = path.extname(req.body.filePath);
if (ext !== '.png') {
이런식으로 쓸수가 있게 되는것 같네요
path 모듈의 자세한 사용 방법은
https://nodejs.org/api/path.html
node.js의 도큐멘트에 자세하게 나와있더라구요.
제가 부족한 부분이나 틀린부분이있으면 강사님께서 보충해주시지 않을까 싶습니다..ㅠ
저도 부족하지만 도움드릴 수 있지않을까 해서 올려봅니다!
화이팅 입니다!
0
John Ahn
지식공유자2020.05.29
너무나 좋은 답변 감사드립니다 꾸벅꾸벅 !!!!
아그리고 저도 오픈소스 사용법 볼떄 맨날 좌절 한답니다 ㅠㅠ !!! 함께 힘내요 ~!!!! ㅎㅎㅎ
0
답변 3