Base64 ์ธ์ฝ๋ฉ/๋์ฝ๋ฉ ๋๊ตฌ๋ฅผ ๋ง๋ค์์ต๋๋ค. ์ฒ์์๋ OpenAI ChatGPT API๋ฅผ ์ธ ๋ ์ด๋ฏธ์ง๋ฅผ Base64๋ก ๋ณํํด์ ๋ณด๋ด์ผ ํด์ ์จ๋ดค๋ ์ ๋์์ต๋๋ค. ํ์ง๋ง ์น ์์ตํ๋ฅผ ์ฐพ์๋ณด๋ ์ค ์ด ๋๊ตฌ๋ฅผ ์ฌ๋๋ค์ด ๋ง์ด ์ด๋ค๋ ๊ฑธ ์๊ฒ ๋์์ต๋๋ค.
์ ๋ง๋ค์๋?
์ ๋ช ํ ์ฌ์ดํธ๋ค์ ์ง์ ์จ๋ณด๋ UI๊ฐ 10๋ ์ ๋๋์ด์์ต๋๋ค. ํ๊ธ ์ฒ๋ฆฌ๋ ์ ๋๋ก ์ ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์์ต๋๋ค. "์๋ ํ์ธ์"๋ฅผ ์ธ์ฝ๋ฉํ๋๋ฐ ๊นจ์ ธ์ ๋์ค๊ฑฐ๋, ๋์ฝ๋ฉํ ๋๋ ์๋ ํ ์คํธ๊ฐ ์ ๋์์ต๋๋ค. ์ด๋ฐ ๊ธฐ๋ณธ์ ์ธ ๋ฌธ์ ๋ ํด๊ฒฐํ์ง ๋ชปํ๊ณ ์์์ต๋๋ค.
์ ๊ฐ ์ฌ์ฉ์ฑ์ด๋ ๋์์ธ ๋ฉด์์ ์ ๊ฒฝ ์จ์ ๋ง๋ ๋ค๋ฉด ์์ตํ๋ฅผ ๊ธฐ๋ํ ์ ์์ง ์์๊น ์ถ์์ต๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ
ํ ์คํธ๋ฅผ Base64๋ก ์ธ์ฝ๋ฉํ๊ณ , Base64๋ฅผ ๋ค์ ํ ์คํธ๋ก ๋์ฝ๋ฉํ ์ ์์ต๋๋ค. ์ค์๊ฐ์ผ๋ก ๋ณํ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ฌ์ฃผ๋๊น ๋ฐ๋ก ํ์ธํ ์ ์์ต๋๋ค.
์ด๋ฏธ์ง ํ์ผ๋ Base64๋ก ๋ณํํ ์ ์์ต๋๋ค. ๋๋๊ทธ ์ค ๋๋กญ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์ฌ๋ฆฌ๋ฉด ์๋์ผ๋ก Base64 ๋ฌธ์์ด๋ก ๋ณํํด์ค๋๋ค.
๋ณํ ๊ฒฐ๊ณผ๋ฅผ ๋ณต์ฌํ ์ ์์ด์ ๋ฐ๋ก ๋ค๋ฅธ ๊ณณ์ ๋ถ์ฌ๋ฃ์ ์ ์์ต๋๋ค. ๊ธด Base64 ๋ฌธ์์ด๋ ํ ๋ฒ์ ๋ณต์ฌํ ์ ์์ต๋๋ค.
๊ฐ๋ฐ ๊ณผ์
JavaScript์ btoa()์ atob() ํจ์๋ฅผ ์ฌ์ฉํด์ ๊ธฐ๋ณธ์ ์ธ ์ธ์ฝ๋ฉ/๋์ฝ๋ฉ์ ๊ตฌํํ์ต๋๋ค. ํ์ง๋ง ํ๊ธ ๊ฐ์ ์ ๋์ฝ๋ ๋ฌธ์๋ ์ ๋๋ก ์ฒ๋ฆฌ๋์ง ์์์ต๋๋ค.
Cursor AI์๊ฒ ๋ฌผ์ด๋ณด๋๊น TextEncoder์ TextDecoder๋ฅผ ์ฌ์ฉํด์ UTF-8 ๋ฐ์ดํธ๋ก ๋ณํํ ํ Base64๋ก ์ธ์ฝ๋ฉํ๋ ๋ฐฉ์์ผ๋ก ๊ธ๋ฐฉ ํด๊ฒฐํด์คฌ์ต๋๋ค. ์์์ ๋ ธ์ถ๋๋ Base64 ๋๊ตฌ๋ค์ ํ์ธํด๋ณด๋ ๋๋ถ๋ถ ์๋ฌธ๋ง ์ ๋๋ก ์ฒ๋ฆฌํ๊ณ ํ๊ธ์ ๊นจ์ง๋ ๊ฒฝ์ฐ๊ฐ ๋ง์์ต๋๋ค. ์ด ๋ถ๋ถ์์ ์ ๊ฐ ์ข ๋ ์ ๋ฆฌํ ์ ์์ ๊ฒ ๊ฐ์์ต๋๋ค.
์ด๋ฏธ์ง ํ์ผ ์ฒ๋ฆฌ๋ FileReader API๋ฅผ ์ฌ์ฉํ์ต๋๋ค. ์ฌ์ฉ์๊ฐ ํ์ผ์ ์ ํํ๋ฉด FileReader๋ก ์ฝ์ด์ Base64๋ก ๋ณํํฉ๋๋ค. ํฐ ์ด๋ฏธ์ง๋ฅผ Base64๋ก ๋ณํํ๋ฉด ๋ฌธ์์ด์ด ๋๋ฌด ๊ธธ์ด์ ธ์ ์ฑ๋ฅ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์์ด์ ํ์ผ ํฌ๊ธฐ ์ ํ์ ๋๊ณ ๊ฒฝ๊ณ ๋ฉ์์ง๋ฅผ ํ์ํ๋๋ก ํ์ต๋๋ค.
๋ด๊ฐ ๊ฐ์ ํ ๋ถ๋ถ
๊ธฐ์กด ์ฌ์ดํธ๋ค์ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๋ ค๊ณ ํ์ต๋๋ค. ๋ชจ๋ํ ๋์์ธ์ ์ ์ฉํ๊ณ , ๋ชจ๋ฐ์ผ์์๋ ํธํ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ๋ฐ์ํ์ผ๋ก ๋ง๋ค์์ต๋๋ค.
๊ฐ์ฅ ์ค์ํ ๊ฑด ํ๊ธ ์ฒ๋ฆฌ๋ฅผ ์ ๋๋ก ํ๋ค๋ ์ ์ ๋๋ค. "์๋ ํ์ธ์"๋ฅผ ์ธ์ฝ๋ฉํ๊ณ ๋ค์ ๋์ฝ๋ฉํด๋ ์ ํํ "์๋ ํ์ธ์"๊ฐ ๋์ต๋๋ค. ์ด๋ฐ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ๋ ์ ๋๋ก ์ ๋๋ ์ฌ์ดํธ๋ค์ด ๋ง์๋๋ฐ, ์ด ๋ถ๋ถ์์ ์ฐจ๋ณํํ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค.
์ค์๊ฐ ๋ณํ ๊ธฐ๋ฅ๋ ์ถ๊ฐํ์ต๋๋ค. ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ๋ ์ฆ์ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ ์ ์๊ฒ ํด์ ๋ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ํ์ต๋๋ค.
์์ตํ ์ ๋ต
์์ง ๊ตฌ์ฒด์ ์ธ ์์ตํ ์ ๋ต์ ์์ต๋๋ค. ์๋์ผ์ค ์ฌ์ฌ๋ ํต๊ณผ๊ฐ ์ ๋์ด์ ์ค์ ๋ก ์ด๋ป๊ฒ ๋ ์ง๋ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
์ฌ๋๋ค์ด ๋๋๋ก ๋ง์ด ์ฐ๊ฒ ํด์ ๊ฒ์ ์์์ ๋ ธ์ถ๋๋ ๊ฒ์ ๋ ธ๋ฆฌ๋ ค๊ณ ํฉ๋๋ค. ์ฌ์ฉ์ ๊ฒฝํ์ ์ฐ์ ์ผ๋ก ํ๊ณ , ๋์ค์ ํธ๋ํฝ์ด ๋์ด๋๋ฉด ์ ์ ํ ์์ตํ ๋ฐฉ๋ฒ์ ์ฐพ์ ๊ณํ์ ๋๋ค.
Base64 ๋๊ตฌ๋ฅผ ์ง์ ์ฌ์ฉํด๋ณด๊ณ ์ถ๋ค๋ฉด Base64 ์ธ์ฝ๋/๋์ฝ๋๋ฅผ ํ์ธํด๋ณด์ธ์.