2008-09-17 3 views
3

.NET 2.0(バイナリ形式)を使用して、サーバーからブラウザにPDFファイルをストリーミングする方法を探しています。.NET 2.0を使用してブラウザにPDFファイルをバイナリ形式でストリームする方法

私は、サーバーパスから既存のPDFファイルを取得し、バイナリとしてブラウザにプッシュしようとしています。

+0

これは、PDFをサーバーにドロップしてURL経由で配信するだけとはどのように違いますか?これは動的に生成されるPDFですか? –

+0

@ spoon16、このアプローチにはセキュリティ上の問題があります。ページのビューソースからpdf urlを見ることができます。これらは静的なファイル(.pdf、.htm ...など)であるため、IISによって直接、このURLを要求した人には、ログインしているかどうかを確認することなく、直接処理されます。 – Sunil

答えて

1

バイナリを出力ストリームResponse.OutputStreamに書き込みます。次に、ヘッダContent-Dispositionヘッダを追加します。

0

正しい応答タイプを設定したハンドラまたはページを設定して、pdfを応答出力バッファに出力するだけで済みます。

3
  1. セットのContent-TypeResponse.ContentType = "application/pdf"
  2. を設定ContentDisposition、ファイルの新しい名前を与えたい場合:Response.Headers.Add("Content-Disposition", "attachment: filename=file.pdf");
  3. コンテンツを書きますKopp氏はResponse.OutputStreamと言っています。

ステップ2は厳密には必要ありませんが、ブラウザがASPXファイルと同じ名前でPDFを保存しようとしないようにしたい場合は、おそらく良い考えです。