취업/React.JS

[React.js] 비디오 내용을 통해서 md5 추출하기.

카슈밀 2023. 10. 4. 15:30
반응형

결론적으로 말하면 되긴하나 안된다.

 

내 경우 비디오 파일을 읽고 해당 내용의 유니크함을 지키기 위해서 해당 내용을 설정하였다.
그런데, php의 경우 해당 부분을 서버에서 읽어 문제가 되지 않으나, 리액트는 브라우저라 해당 내용이 되지 않았다.

브라우저 메모리 초과로 인해 청크로 쪼갰더니 32자리 글자가 200자가 넘어가더라...

const chunkSize = 1024 * 1024; // 1MB 조각
    const fileSize = file.size;
    let offset = 0;
    let md5Checksum = '';
    
    while (offset < fileSize) {
        const chunk = file.slice(offset, offset + chunkSize);
        offset += chunkSize;
    
        const arrayBuffer = await new Promise((resolve) => {
            const reader = new FileReader();
            reader.onload = (event) => resolve(event.target.result);
            reader.readAsArrayBuffer(chunk);
        });
    
        const wordArray = CryptoJS.lib.WordArray.create(arrayBuffer);
        const chunkMd5Checksum = CryptoJS.MD5(wordArray).toString(CryptoJS.enc.Hex); // 16진수로 반환
        md5Checksum += chunkMd5Checksum;
    }

결국 해당 내용은 잘 만들었으나 버림

728x90