2016-09-15 10 views
2

<a download>, as I understand it, should download the response file on click. I have the following code that doesn't work:Firefoxの<a download> issue

<a href="{{ download_url }}" style="cursor: pointer" download>Download PDF</a> 

the relevant response header:

Content-Disposition: filename="Podsumowanie_wizyty_X_Y_2016-07-06.pdf" 
Content-Type: application/pdf 
Date: Thu, 15 Sep 2016 13:26:19 GMT 
Server: WSGIServer/0.1 Python/2.7.11 
Vary: Authorization, Cookie 
x-frame-options: SAMEORIGIN 

The returned file is viewed, not downloaded.

I have also discovered, that the following example works well: example1

しかし、次の例では、ダウンロードの代わりにファイルを閲覧する:example2

すべてはクロームで意図したとおりに動作しているようです。

私の目的のために何かできますか?それはContent-Disposition: attachment;なしで動作するはずです。可能であれば、ヘッダーをつけてはいけません。

答えて

2

これは既知の、文書化された動作です。

あなたのケースでは、あなたのHTTPヘッダーは、(実際にはもう少し複雑だ、RFC1806RFC2616を参照)inlineattachmentの間に1つを必要とするContent-Disposition、整形式ではありません。 inlineは、Firefox(MDNを参照してください。)にデフォルトとして扱われますが、他のブラウザでは、この瞬間にも行動発散をブラウザからの

(、。後で参照関わらず優先downloadContent-Disposition以上)(これはとの違いを説明する動作が異なります他の二つの例):Firefoxをサポートしたい場合は、FirefoxがContent-Dispositionを優先しつつ、クローム(MDNを参照download属性を優先します)

は、残念ながら、あなたは(任意のオプションを持っていますが、あなたのHTTPヘッダーを修正しません)。

-2

それはdownload=

+1

を参照してください[仕様](https://www.w3.org/TR/html5/links.html#attr-hyperlink-download)であるべきときにはdownload>を持っている:*属性を持っていること値;値がある場合は、デフォルトのファイル名*を指定します。注:**は** ** ** ** ** **が必要です。 – Quentin

関連する問題