1

だから...私はドキュメントを提供するhttpハンドラーを持っています。応答contentTypeは正しく設定されていますが、ハンドラーのURLに拡張子(pdf)がありません。

次のようになります。

http://mysite/handler.ashx?id=123&locale=123

私がfirefox/chromeなど(つまり、まともなブラウザ)でこのURLにアクセスすると、すべてが順調です(ブラウザは、ブラウザ内でファイルをレンダリングするためのプラグイン(acrobatリーダーなど)を正しく選択します)。

Internet Explorer 7でこのURLにアクセスすると、初めてすべてがうまくいきます。ブラウザを閉じずに更新を押すか、URLに再度アクセスすると、「このファイルを開くか保存しますか」というダイアログが表示されます!!!! [開く]をクリックしても何も起こりません!

次に、リダイレクトページを作成しました...

http://mysite/redirectto.aspx?id=123&locale=123

このページは元のURLにリダイレクトされるだけで、上記の問題が引き続き発生します。

ファイルをレンダリングするためにプラグインが必要な場合、つまり、alternatiffを使用したtiffファイル、acrobatリーダーを使用したpdfで同じ問題が発生するわけではありません。これらはすべて、まったく同じ問題を抱えています。

アイデア??

4

2 に答える 2

1

それで...

ページを埋めるようにスタイル設定されたiframeを含む中間ページを作成しました。iframeはhttphandlerを指しています。すなわち

これにより、InternetExplorerの問題が解決されます。

重要なことに、このソリューションには追加の構成は必要ありません:)

于 2009-07-23T12:40:31.083 に答える
1

私はこれに似たようなことをしましたが、悲しいことにそれは昨年のことであり、完全な解決策を提供するために自分のコードを参照できるのはもう同じ会社ではありません. 私たちが最終的に行ったのは、基本的には pdf 用の URL を使用することでしたが、それらの要求を取得して必要に応じて処理する http モジュールがありました。

編集 - 私が http モジュールと言うとき、それは http ハンドラか何かだったかもしれません。おっしゃるとおり、ずいぶん前のことです。一般的なポイントは、ページに直接送信される前に、リクエストがサーバーに到着したときに起動したコードであったため、something.pdf が発見され、データが呼び出し元にスローされ、それがちょうどそうであったように見えたということです。サーバーから静的 pdf を読み取ります。

于 2009-07-23T10:40:54.647 に答える