web-dev-qa-db-ja.com

Content-Disposition:「インライン」と「添付」の違いは何ですか?

の違いは何ですか

Response.AddHeader("Content-Disposition", "attachment;filename=somefile.ext")

そして

Response.AddHeader("Content-Disposition", "inline;filename=somefile.ext")

どちらかを使用すると、常に両方のファイルをダウンロードするように求めるウィンドウプロンプトが表示されるため、違いはわかりません。私は仕様を読みましたが、それは無知です。

230
Cleiton

どちらかを使用すると、両方のファイルをダウンロードするように求めるウィンドウプロンプトが表示されるためです。

この動作は、ブラウザと提供しようとしているファイルによって異なります。インラインでは、ブラウザはブラウザ内でファイルを開こうとします。

たとえば、PDFファイルとFirefox/Adob​​e Readerがある場合、インライン処理によりFirefox内でPDFが開きますが、添付ファイルは強制的にダウンロードします。

.Zipファイルを提供している場合、ブラウザはインラインで表示できません。そのため、インラインおよび添付ファイルの処理については、ファイルがダウンロードされます。

274
jimyi

インラインの場合、ブラウザはブラウザウィンドウ内でレンダリングしようとします。できない場合は、外部プログラムに頼り、ユーザーにプロンプ​​トを表示します。

添付ファイルを使用すると、すぐにユーザーに送信され、ブラウザに読み込むかどうかは、できるかどうかには関係ありません。

29
Cullen Walsh

また、インラインはサーバーから直接Officeドキュメント(xls、docなど)を開こうとするため、ユーザー資格情報プロンプトが表示される可能性があります。

このリンクを参照してください:

http://forums.asp.net/t/1885657.aspx/1?Access+the+SSRS+Report+in+Excel+format+on+server

誰かがASP.Net経由でSSRSからExcelレポートを配信しようとしました->ユーザーは常に資格情報の入力を求められました。プロンプトでキャンセルをクリックすると、とにかく開かれます...

Content DispositionがAttachmentとしてマークされている場合、開くをクリックしてからローカルコピーからExcelで開くと、自動的にtempフォルダーに保存されます。

9
pastrami01