인프런 커뮤니티 질문&답변
Upload 컴포넌트가 api서버랑 통신을 주고받는 건가요?
작성
·
228
1
<Upload
name="image"
action={`${API_URL}/image`}
listType="picture"
showUploadList={true}
onChange={onChangeImage}
>
여기서 action의 url로 요청을 보내고
app.post("/image", upload.single("image"), (req, res) => {
const file = req.file;
console.log(file);
res.send({ imageUrl: file.path });
});
api 서버에서 req인자로 받으면 res를 Upload컴포넌트에게 돌려주고 onChangeImage 함수에서 info 인자는 res로 받는 건가요?
혼자 한 시간 넘게 고민해봤는데 헷갈려서 질문드립니다.ㅜㅜ
퀴즈
68%나 틀려요. 한번 도전해보세요!
일반적인 파일 업로드 아키텍처에서 스토리지 서버가 파일을 저장한 후 클라이언트에게 주로 무엇을 전달하나요?
파일 내용 전체
저장된 파일의 URL 경로
파일의 원본 이름
서버의 로컬 파일 시스템 경로
답변 1
1
그랩
지식공유자
넵 이해하신 부분이 맞습니다. 현재 사용하는 antd 라이브러리가 파일 전송을 할 때 꽤 복잡한 편이라 어려우실 수 있을 것 같아요!
이야기하신 대로 우선 action에 적힌 url로 image를 전송하면 서버에서는 요청을 처리한 후 response로 다시 뿌려줍니다. 그렇게 되면 onChange의 prop 함수가 불리게 되고 그 때 함수의 인자(저는 info라고 이름을 지었습니다)에는 response가 들어가 있게 됩니다 :)




