6

ffでwww.example.com/example.pdfのダイアログボックスとして保存を強制する方法はありますか? (ヘッダーを変更することはできません)

4

2 に答える 2

4

ファイルを base64 でクライアントに出力できる場合は、データ URI を使用してダウンロードできます。

location.href = 'data:application/octet-stream;base64,' + appendPDFContentHere
OR
<a href="data:application/octet-stream;base64,appendPDFContentHere">pdf</a>

ただし、これは非 IE ブラウザでのみ機能しますが、Firefox でリクエストしたように、うまく機能するはずです。

編集:

以下の両方の例には、PNG を作成するためのバイトが含まれています。最初の 1 つをクリックすると、ブラウザで通常どおりに画像を表示できます。ただし、2 番目のリンクをクリックすると、画像のダウンロードが強制されます。.png として保存すると、まったく同じ画像であることがわかります。2 つのリンクの唯一の違いは MIME タイプです

画像を表示(短縮 URL のプレビュー) -- MIME タイプ: image/png

画像のダウンロード(短縮 URL のプレビュー) -- mime タイプ: application/octet-stream

appendPDFContentHereの代わりに何を入れるかを尋ねたところ、答えは PDF を構成する base64 でエンコードされたバイトです。このオンラインbase64 エンコーダーを使用して、例で使用されている画像をエンコードしました。

于 2009-05-07T06:12:23.647 に答える