In JavaScript possiamo leggere il contenuto di un file come URL di dati.

La soluzione è la seguente:


'use strict';

const inputFile = document.querySelector('#upload');

inputFile.addEventListener('change', function() {
    const input = this;
    if(input.files && input.files.length > 0) {
        const file = input.files[0];
        const reader = new FileReader();

        reader.onloadend = () => {
            const base64DataURL = reader.result;
            console.log(base64DataURL);
        };

        reader.readAsDataURL(file);

    }
}, false);