2009-07-23 7 views
1

だから私はドキュメントを扱うhttpハンドラを持っています。応答contentTypeは正しく設定されていますが、ハンドラのURLには拡張子pdfがありません。asp.net httphandlersのインターネットエクスプローラと検索ファイル

それは次のようになります。

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

私はFirefoxの/クロームなど(つまり、まともなブラウザ)にこのURLにアクセスすると、すべてが(ブラウザが正しく(などアクロバットリーダーとしてのプラグインを選択)もありますブラウザ内でファイルをレンダリングする)。

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

次の私は...リダイレクトページを作成しましたので、私は、このページには、単に元のURLにリダイレクトし、まだ問題が発生した上で言及

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

をご覧ください。

アクロバットリーダーを使用してalternatiff、pdfを使用してファイルをレンダリングするためにプラグインが必要な場合、同じ問題は発生しません。

アイデア??

+0

を必要としない、私は本当にあなたのHTTPレスポンスヘッダを(Fiddler2をまたは類似でそれらをつかむ)見てみたいと思います。あなたが本当に適切なContent-Typeを送っているなら、私はこの問題を見ることは期待しません。 – EricLaw

答えて

1

はそう...

は、私がページを埋めるためにスタイルのiframeが含まれている中間ページを作成しました。 iframeはhttphandlerを指します。 すなわち

これは、Internet Explorer用の問題を解決します。

極めて重要なこのソリューションは、追加の構成:)

1

私はこれに似たことをやったことがありますが、悲しいことに去年でしたし、私は完全な解決策を与えるために私のコードを参照することができません。私たちが本質的にやり遂げたのは、pdf用のURLを使用することでしたが、httpモジュールがこれらの要求を受け取り、必要に応じて処理しました。

編集 - 私がhttpモジュールと言うとき、それはhttpハンドラか何かでした。私が言ったように、それはずっと前だった。一般的なポイントは、要求がサーバーに送られてからページに直接送られる前に発射されたコードなので、私たちのsomething.pdfが検出され、データが呼び出し元に返されたように見えたということです静的なpdfをサーバーから読み込みます。

関連する問題