メディアファイルがグローバルCDNに保存されているという状況があります。私たちのWebアプリは独自のサーバーでホストされており、メディアアセットが必要になると、CDNURLから呼び出されます。最近、ユーザーが添付ファイルをダウンロードできるページがありましたが、一部のファイルタイプ(MP3など)はダウンロードではなくブラウザーで開いていました。これを回避する唯一の方法は、ファイルを添付するHTTP応答を手動で指定することでしたが、これを実現する唯一の方法は、ファイルをCDNからサーバーにダウンロードしてからユーザーにフィードバックすることでした。これにより、ファイルを作成する目的が失われます。グローバルCDNで。代わりに、これに対するクライアント側の解決策があるかどうか疑問に思っていますか?
編集:これがどこかで見つかりましたが、すべてのブラウザで正しく機能するかどうかはわかりませんか?
<body>
<script>
function downloadme(x){
myTempWindow = window.open(x,'','left=10000,screenX=10000');
myTempWindow.document.execCommand('SaveAs','null','download.pdf');
myTempWindow.close();
}
</script>
<a href=javascript:downloadme('/test.pdf');>Download this pdf</a>
</body>
再編集:まあ、そのアイデアはこれだけです-> execCommand SaveAsはFirefoxで機能しますか?