데이터 프로토콜 URL 크기의 제한
웹 개발 영역에서 "data:" URL 체계를 사용하면 임의의 데이터 인코딩이 가능합니다. 를 이미지와 같은 URL로 변환합니다. 그러나 이 프로토콜을 활용할 때 잠재적인 크기 제한에 대한 우려가 있습니다.
브라우저별 제한
"data:" URL 체계에 대한 사양은 보편적인 제한을 부과하지 않습니다. 크기 제한. 대신 개별 브라우저가 자체적으로 제한 사항을 결정하도록 맡깁니다.
-
Chrome: 현재 문서 크기 제한은 2MB입니다. 그러나 임의 Blob의 메모리 내 저장 제한은 시스템 아키텍처 및 플랫폼에 따라 달라지는 전체 크기 제한을 나타냅니다.
-
Firefox: 데이터 URI에는 명시적인 크기 제한이 없습니다.
-
IE >= 9 & Edge: 최대 크기는 다음과 같습니다. 4GB.
-
Safari 및 Mobile Safari: 정확한 크기 제한은 아직 미정입니다.
대체 접근 방식
만약 "data:" 프로토콜의 크기 제약으로 인해 문제가 발생하며 대체 옵션은 다음과 같습니다.
-
Blob URL: URL API를 사용하는 이 기술을 사용하면 Blob 개체를 참조하는 URL을 생성할 수 있습니다. 이는 더 큰 데이터 크기(Chrome에서는 최대 500MiB)를 수용할 수 있습니다.
-
FileSaver.js, StreamSaver.js, JSZip: 이러한 라이브러리는 다음을 지원하는 브라우저에서 데이터 전송을 처리하기 위한 대체 방법을 제공합니다. 파일 API.
관련 고려 사항
-
데이터 URI 크기 감지: Modernizr은 32KB를 초과하는 데이터 URI에 대한 브라우저 지원을 확인하는 기능을 제공합니다.
-
보안에 미치는 영향: "data:" 프로토콜을 사용하여 삽입된 데이터는 외부 네트워크 캐싱을 직접 우회합니다. 이는 검증 또는 콘텐츠 분석을 위해 캐싱에 의존하는 보안 메커니즘에 영향을 미칠 수 있습니다.
위 내용은 데이터 URL 크기 제한에 대한 브라우저별 제한 사항과 대안은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!