Computer >> 컴퓨터 >  >> 프로그래밍 >> HTML

HTML window btoa() 메서드 – 문자열을 Base64로 인코딩하는 방법

HTML의 window.btoa() 메서드는 데이터 문자열을 Base-64 형식으로 인코딩합니다. 이렇게 인코딩된 문자열은 HTML 문서에서 atob() 메서드를 사용하여 다시 원래대로 디코딩할 수 있습니다.

구문

기본 구문은 다음과 같습니다 −

window.btoa(인코딩할_문자열);

그럼 HTML window btoa() 메서드의 실제 활용 예제를 살펴보겠습니다 −

예제

아래 예제에서는 텍스트 영역에 입력한 메시지를 btoa() 메서드로 인코딩하고, atob() 메서드로 다시 디코딩하는 과정을 보여줍니다.

<!DOCTYPE html>
<html>
<style>
    body {
        color: #000;
        height: 100vh;
        background: linear-gradient(62deg, #FBAB7E 0%, #F7CE68 100%) no-repeat;
        text-align: center;
    }
    .btn {
        background: #db133a;
        border: none;
        height: 2rem;
        border-radius: 2px;
        width: 40%;
        display: block;
        color: #fff;
        outline: none;
        cursor: pointer;
        margin: 1rem auto;
    }
    ::placeholder {
        color: #000;
    }
</style>
<body>
<h1>HTML Window atob()/btoa() 메서드</h1>
<textarea placeholder="여기에 메시지를 입력하세요" cols="30" rows="5"></textarea>
<button onclick="encode()" class="btn">메시지 인코딩</button>
<button onclick="decode()" class="btn">메시지 디코딩</button>
<div class="show"></div>
<script>
    var show = document.querySelector(".show");
    function encode() {
        var encMsg = window.btoa(document.querySelector("textarea").value);
        show.innerHTML = encMsg;
    }
    function decode() {
        var decMsg = window.atob(window.btoa(document.querySelector("textarea").value));
        show.innerHTML = decMsg;
    }
</script>
</body>
</html>

실행 결과

HTML window btoa() 메서드 – 문자열을 Base64로 인코딩하는 방법

흰색 텍스트 영역에 메시지를 입력한 뒤 “메시지 인코딩” 버튼을 클릭하면, btoa() 메서드에 의해 인코딩된 메시지가 화면에 표시됩니다.

HTML window btoa() 메서드 – 문자열을 Base64로 인코딩하는 방법

이어서 “메시지 디코딩” 버튼을 클릭하면, atob() 메서드에 의해 디코딩된 원래 메시지가 표시됩니다.

HTML window btoa() 메서드 – 문자열을 Base64로 인코딩하는 방법

참고 사항

btoa()atob()는 각각 Binary to ASCII, ASCII to Binary를 의미하며, 주로 문자열을 안전하게 전송하거나 저장하기 위해 Base64 인코딩이 필요한 경우에 사용됩니다. 단, 한글 등 유니코드 문자를 직접 인코딩할 수 없으므로, 이러한 문자는 별도의 변환 처리가 필요합니다.