codestates / codestates/rightnow
[Error-Handling] multer를 이용해 클라이언트에서 사진 전송시, 파일이 읽혀지지 않음
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 3
- PR merge metrics
- No merged PRs in 30d
Description
### **어떤 에러인가요?**
- 클라이언트에서 사진파일을 서버에 보내면 저장 경로를 읽어오지 못해서 파일 전송이 안된다.
### **에러 메시지**
```
Error: ENOENT: no such file or directory, open 'C:\image\user\20220111-0.eutpq5-0.h3p730.jpg'
```
### **에러 핸들링 방법**
윈도우 컴퓨터(클라이언트)에서는 저장 경로 슬래시가 '\'로 저장되지만 맥(서버)에서는 '/'로 저장되어서 통신오류가 생긴것같다.
그래서 파일경로를 읽어오는 메소드를 변경했다.
```js
const DIR_NAME: any = __dirname
.split('/')
.slice(0, __dirname.split('/').length - 1)
.join('/');
DIR_NAME = DIR_NAME + '/image/user/'
// 이렇게 파일 경로를 나누면 윈도우 컴퓨터에서는 '/' 를 읽지 못한다.
const DIR_NAME = __dirname + '/..';
DIR_NAME = DIR_NAME + '/image/user/'
// 이렇게 수정해주었다.
// 현재의 위치에서 이전 경로로 이동하여 파일 저장 경로를 찾았다.
```
### **에러 핸들링을 위해 참고한 레퍼런스 링크**
[링크](https://github.com/codestates/Memory.log-Client/issues/19)
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.