Etc

Data URL ?

자바니또 2021. 10. 9. 13:10

개요

이미지 파일을 저장하는 방법에는 크게 두 가지가 있다.

  • 파일을 특정 위치에 저장하고, DB에 위치를 기록한다.
  • 파일을 DataURL로 변환하여 DB에 저장한다.

이번 포스팅에서는 두번째 방법에 대해서 알아본다.

목차

  • DataURL
  • DataURL 특징
  • DataURL 단점

DataURL

DataURL 이란, 접두사(data:)가 붙은 URL이며, 바이너리 파일을 Base64로 인코딩하여 ASCII 문자열 형식으로 변환한 것이다. 기본적인 형식은 다음과 같다.

data:[<mediatype>][;base64],<data>

개발자 도구로 살펴보면 다음과 같이 나온다.

DataURL 특징

  • DataURL을 DB에 저장하는 것은 파일을 DB에 저장하는 것과 같다.
  • 파일의 크기가 커질수록 <data>영역이 길어진다.
  • disk cache 가 불가능하다. memory cache만 가능
  • 바이너리 파일을 한 번 인코딩 했기 때문에, 이미지의 경우 화면에 출력하는데 비교적 오래걸린다.

DataURL 단점

  • 브라우저에 따라서 URL의 길이제한이 있을 수도 있고, 디코딩 처리가 오래 걸리기 때문에 작은 파일의 경우에만 사용하는 것이 바람직하다.
  • disk cache가 불가능하여 이미지를 가져올 시 비교적 많은 시간이 소모된다. 

Reference