inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

multer를 사용해서 사진 혹은 동영상을 업로드 할 때 url을 통해서 사진은 접근이 가능하나 동영상은 404에러가 뜹니다.

394

이승훈

작성한 질문수 49

0

 안녕하세요. 오랜만에 질문드립니다. 제가 사진이나 동영상등을 멀터를 통해서 업로드 한 후 사진과 동영상을 각각 uploads/image, uploads/video 디렉터리에 disk storage 방식으로 저장하게 하였습니다. 그리고 저장된 파일이름과 서버url을 결합시켜서 db에 저장하게 하였고 사진은 url을 통해서 접근이 가능한데 동영상은 url로 접근할 때 404에러가 뜨더라구요. 동영상이 저장된 디렉터리로 이동시 동영상 파일이 온전히 있고 동시에 재생도 가능했습니다. 인코딩등의 문제가 관련이 있을까요?

TypeORM NestJS nodejs express

답변 1

0

제로초(조현영)

static 설정 어떻게하셨나요? 확장자나 모두 일치하나요? 동영상을 사진 폴더에 넣고도 접근해보세요.

0

이승훈

일단 사진 폴더에 동영상을 넣고 접근해도 결과는 안되는걸로 같았습니다. static 설정은 사진과 동영상을 처리하기 위해 아래처럼했습니다.

app.useStaticAssets(join(__dirname, "../uploads/image"), {
    prefix: "/media",
  });
  app.useStaticAssets(join(__dirname, "../uploads/video"), {
    prefix: "/media",
  });

 

0

제로초(조현영)

dist 폴더 지우고 서버 껐다 켜도 동일하신가요? /media/이미지는 되는데 /media/비디오는 404인 거죠?

참고로 join은 저렇게 사용하면 join을 쓰는 의미가 없습니다(돌아가긴 합니다), join(__dirname, '..', 'uploads', 'image') 이렇게 써야 합니다.

0

이승훈

 일단 dist 폴더를 지우고 서버를 다시켜도 404가 뜹니다.

{"success":false,"statusCode":404,"message":"Http Exception이 발생하였습니다.","timestamp":"Tue Jul 05 2022 19:28:15 GMT+0900 (Korean Standard Time)","reason":"Cannot GET /media/kakaotalk_20220618_154257065-1657011632337.mp4","error":"Not Found"}

만약 동영상을 디스크 스토리지 방식으로 업로드 했을 때 서버 디렉터리에 /uploads/video라는 디렉터리에 파일(mp4파일입니다.)이 저장되고 여기에 url을 입히게 됬을 때 형식은 아래와 같습니다.

http://localhost:5147/media/kakaotalk_20220618_154257065-1657011632337.mp4

사진은 아래와 같습니다.

http://localhost:5147/media/img1-1657016922175.jpg

제 깃헙주소를 올려드릴까요?

강의자료는 어디서 다운받나요?

0

145

4

질문 있습니다.

0

320

3

코드 편집기 확장 프로그램

0

220

2

(질문)비밀 저장소에 접근하기 위한 인증 정보는 로컬 .env에 저장하는지?

0

165

2

(질문)외부 저장소를 통한 환경변수 불러오기 비동기 질문

0

179

3

로그인을 해도 LoggedInGuard쪽에서 false값이 나옵니다.

0

163

2

로그인방법이 고민됩니다.

0

197

2

yarn seed 명령어 실행 시 데이터 삽입 안됨

0

305

4

yarn run db:create 시에 발생하는 데코레이터 오류

0

249

2

npm run db:create 시에 발생하는 decorating 오류

0

245

2

RxJS 디버깅 질문 있습니다.

0

201

3

CacheManager에 대해 질문 있습니다.

0

185

2

로깅은 어떻게 하는게 효율적일까요?

0

240

1

CORS 질문 있습니다.

0

428

2

쿠키 옵션에 대해서 질문 있습니다.

0

190

2

로그아웃 요청이 403 forbidden 에러가 나는데 왜그런걸까요??

0

458

1

401 unauthorized문제

0

306

1

가드의 장점에 대해서 질문이 있습니다.

0

234

1

로그 관리에 대해 질문 있습니다.

0

256

2

CORS 에러 질문 있습니다.

0

329

2

배포 환경 DB 연결 질문 있습니다.

0

418

2

socket io 미 연결 문제 (nest & flutter)

1

1169

3

no elements in sequence 에러 관해서 질문이 있습니다.

0

466

1

start:dev-backup으로 돌리면 핫 리로딩이 되요 정상인가요?

0

327

1