진실한 다운로드는 사용자가 웹 페이지에서 다운로드를 클릭하면 전체 페이지를 새로 고치지 않고 파일 다운로드를 시작할 수 있음을 의미합니다. 이 방법은 사용자 경험을 효과적으로 향상시키고 페이지 재 장전으로 인한 대기 시간을 피할 수 있습니다. 이 기사는 JavaScript와 PHP 기술을 결합하여 새로 고침이없는 다운로드 기능을 달성하는 방법을 보여줍니다.
JavaScript를 사용하여 숨겨진 iframe 요소를 작성하고 iframe 의 SRC 속성에 다운로드 링크를 할당하여 페이지를 새로 고치지 않고 파일을 다운로드하도록 브라우저를 트리거합니다.
운영 프로세스에는 다음이 포함됩니다.
function downloadFile(url) {
var iframe = document.createElement('iframe');
iframe.style.display = 'none';
iframe.src = url;
document.body.appendChild(iframe);
}
Call example:
var downloadLink = 'http://example.com/file.pdf';
downloadFile(downloadLink);
컨텐츠 공포 및 컨텐츠 유형을 포함하여 PHP를 통해 올바른 HTTP 응답 헤더를 설정하여 브라우저가 파일을 첨부 파일로 인식하고 파일을 직접 열지 않고 다운로드를 시작할 수 있도록하십시오.
$file = 'path/to/file.pdf';
header('Content-Disposition: attachment; filename="' . basename($file) . '"');
header('Content-Type: application/octet-stream');
header('Content-Length: ' . filesize($file));
readfile($file);
이 헤더 정보를 올바르게 설정 한 후 브라우저는 페이지를 새로 고치거나 점프하지 않고 다운로드 창을 자동으로 팝업합니다.
JavaScript와 PHP의 장점을 결합하면 새로 고침이없는 파일 다운로드를 쉽게 달성 할 수 있습니다. JavaScript는 프론트 엔드에서 숨겨진 iframes를 만들고 다운로드 요청을 트리거 할 책임이 있습니다. PHP는 서버 측에서 해당 HTTP 헤더를 설정하여 브라우저가 파일을 다운로드 가능한 컨텐츠로 인식하는지 확인합니다. 이것은 사용자 경험을 향상시킬뿐만 아니라 페이지의 빈번한 새로 고침을 피합니다.
새로 고침이없는 다운로드를 달성하는 핵심 요점은 JavaScript 작업을 통해 요소 트리거 요청을 숨기고 PHP 측에서 다운로드 응답 헤더를 정확하게 설정하는 것입니다. 이 두 부분을 마스터하면 효율적인 파일 다운로드 기능을 쉽게 구축 할 수 있습니다.