Saturday, January 5, 2019

Javascript에서 AWS S3 파일 업로드 시 URL 인코딩 문제 해결하기

Javascript와 AWS S3를 활용한 파일 업로드: URL 인코딩 문제 해결

이 글에서는 AWS S3와 JavaScript를 사용하여 파일을 업로드할 때 발생하는 URL 인코딩 문제에 대한 해결 방법을 제시합니다. 이는 JavaScript의 일반적인 문제로, 다른 컨텍스트에서도 적용될 수 있습니다.

문제 상황 정의

Javascript를 사용하여 AWS S3로 파일을 업로드할 때, 특히 multipart upload를 사용하면, 반환되는 data.Location 값이 한글일 경우 URL 인코딩되어 반환됩니다. 이러한 현상은 아래 이미지와 같습니다.

URL 인코딩 예시
URL 인코딩 결과 예시

해결 방법 탐색과 적용

's3 url decoding' 등의 키워드로 검색해도 명확한 해결법을 찾기 어려웠습니다. 하지만, 결국 Javascript 자체에서 제공하는 URL 디코딩 함수(decodeURI())가 있다는 것을 알게 되었습니다.

W3Schools의 decodeURI() 함수 설명에 따르면, 이 함수는 주어진 URI에서 특수 문자들을 UTF-8 형식으로 디코드합니다.

디코딩 결과
decodeURI() 함수 적용 결과

결과와 회고

decodeURI() 함수를 적용한 결과, URL 인코딩 문제는 성공적으로 해결되었습니다. 이 문제 해결 과정은 단순했지만, 그에 걸린 시간은 상당했습니다. 이 경험을 통해 JavaScript에서 제공하는 기본 함수의 중요성을 다시 한번 깨닫게 되었습니다.


0 개의 댓글:

Post a Comment