> 웹 프론트엔드 > JS 튜토리얼 > JavaScript에서 Blob 파일을 다운로드할 때 특정 파일 이름을 강제로 적용하려면 어떻게 해야 합니까?

JavaScript에서 Blob 파일을 다운로드할 때 특정 파일 이름을 강제로 적용하려면 어떻게 해야 합니까?

Susan Sarandon
풀어 주다: 2024-12-14 08:00:19
원래의
304명이 탐색했습니다.

How Can I Force a Specific Filename When Downloading a Blob File in JavaScript?

JavaScript에서 강제 다운로드를 위한 Blob 파일 이름 설정

window.location을 통해 직접 Blob 파일을 다운로드할 때 기본 파일 이름은 임의입니다. 끈. 그러나 더 많은 정보를 제공하기 위해 사용자 정의 파일 이름을 설정할 수도 있습니다.

이를 달성하려면 window.location 메소드에만 의존할 수는 없습니다. 대신 다음 단계를 따라야 합니다.

  1. 숨겨진 요소.
  2. href 속성을 blob의 URL로 설정합니다.
  3. 다운로드 속성을 원하는 파일 이름으로 설정합니다.
  4. 요소.

다음은 프로세스를 단순화하는 예입니다.

const saveData = (function () {
  const a = document.createElement("a");
  document.body.appendChild(a);
  a.style = "display: none";
  return (data, fileName) => {
    const json = JSON.stringify(data);
    const blob = new Blob([json], { type: "octet/stream" });
    const url = window.URL.createObjectURL(blob);
    a.href = url;
    a.download = fileName;
    a.click();
    window.URL.revokeObjectURL(url);
  };
})();

const data = { x: 42, s: "hello, world", d: new Date() };
const fileName = "my-download.json";

saveData(data, fileName);
로그인 후 복사

참고:

  • 이전 브라우저에서는 지원하지 않을 수 있습니다. 다운로드 속성.
  • 특정 파일 형식은 다음에 의해 제한될 수 있습니다. 브라우저로 인해 다운로드 오류가 발생합니다. 다른 파일 확장자(예: JSON의 경우 .txt)를 사용해 보세요.

위 내용은 JavaScript에서 Blob 파일을 다운로드할 때 특정 파일 이름을 강제로 적용하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿