multipart file array 표현하는 방식의 표준이 있나요?
미해결
모든 개발자를 위한 HTTP 웹 기본 지식
김영한님 안녕하세요? 딱 필요했던 정보를 재밌고 알차게 정리해주셔서 HTTP 강의 즐겁게 보고 있습니다 :) 제가 영한님의 HTTP 강의를 들어야겠다고 다짐하게 된 에피소드가 있는데요, 네트워크 통신 관련하여 백그라운드가 얕아서 인터넷에 검색해봐도 원하는 결과를 찾지 못했습니다. 관련하여 조언이나 힌트를 얻고자 질문 드립니다. 글 읽어주셔서 미리 감사드리고, 답변 주신다면 도움이 많이 될 것 같습니다! --- Flutter 클라이언트에서 네트워크 통신을 위해 `DIO`라는 라이브러리를 사용하고 있는데, 해당 라이브러리에서 multipart 필드가 array면 필드명(ex:files)에 '[]'를 추가하여 (ex:files[]) 하여 서버로 통신 하고 있습니다. 해당 라이브러리의 설명으로는 대부분의 백엔드 서버에서 필드명에 []를 붙이지 않으면 multipart file array를 인식하지 못하기 때문에 편의(?)를 위해 이런 내부 동작이 있는 것 같습니다. https://pub.dev/packages/dio#multiple-files-upload // Flutter 클라이언트 샘플 코드 FormData.fromMap({ "files" : [ MultipartFile.fromFileSync( "./example/upload.txt" , filename: "upload.txt" ), MultipartFile.fromFileSync( "./example/upload.txt" , filename: "upload.txt" ), ] }); 클라이언트에서 files라고 필드를 정의해도, 서버에서 확인해보면 files[]라고 보내고 있습니다 :) 사실 네트워크 통신 시 필드명에 배열을 표현하는 방식은 언어마다 다양한 것 같은데, 클라이언트에서 사용하는 네트워크 라이브러리에서 배열 표현에 `[]`를 붙이는 걸 보면 제법(?) 강력한 표준인 게 아닐까 추측하고 있습니다. 서버에서는 'files'로 보내도 multipart file 배열을 인식할 수 있지만, 그래도 multipart 필드명에 []를 붙여두었습니다. files => files[] 혹시 관련된 표준 내용을 확인하려면 어디서 알아봐야할까요? 이게 일반적인 표준이긴 한가요? --- 제가 아직 챕터 2까지 밖에 안들어서 강의 내용에 있는데도 성급하게 질문 드린것이라면 죄송합니다^^;
- multipart
- multipartfile
- network
- files[]





