JavaScript: 直接ダウンロードする BLOB ファイルのファイル名の設定
window.location を使用して JavaScript で BLOB ファイルをダウンロードする場合、ファイルは通常、一般的な名前で保存されます。カスタム ファイル名を設定するには、非表示の を作成するなどの特別なテクニックを使用する必要があります。 tag.
元のコード例:
function newFile(data) { var json = JSON.stringify(data); var blob = new Blob([json], {type: "octet/stream"}); var url = window.URL.createObjectURL(blob); window.location.assign(url); }
このコードは、
bfefe410-8d9c-4883-86c5-d76c50a24a1d
へファイル名をmy-download.json に設定し、次の手順に従います。
var a = document.createElement("a"); document.body.appendChild(a); a.style = "display: none";
a.href = url; a.download = "my-download.json";
a.click();
window.URL.revokeObjectURL(url);
例実装:
var saveData = (function () { var a = document.createElement("a"); document.body.appendChild(a); a.style = "display: none"; return function (data, fileName) { var json = JSON.stringify(data), blob = new Blob([json], {type: "octet/stream"}), url = window.URL.createObjectURL(blob); a.href = url; a.download = fileName; a.click(); window.URL.revokeObjectURL(url); }; }()); var data = { x: 42, s: "hello, world", d: new Date() }, fileName = "my-download.json"; saveData(data, fileName);
注:
以上がJavaScript で BLOB ファイルをダウンロードするときにカスタム ファイル名を設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。