問題タブ [ihttphandler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
117 参照

xml-serialization - .aspx で終わるリンクを .ashx にリダイレクトすることはできますか?

主に SharePoint に基づいて最近リリースした Web サイトがあります。一部のサイトでは、単純な XML だけを返す必要がありました。プロジェクトのコンサルタントは、page_load メソッドで応答オブジェクトを書き込む .aspx ページとして xml 戻り値を実装しました。

これについて少し調べてみたところ、これはおそらく間違った方法であることがわかりました。これは、必要のない ASPX ページのすべての余分なイベントを呼び出すからです。

これが私の質問です。これらの関数を httphandler との .ashx リンクとして再作成したいと考えています。ただし、.aspx で終わる元のリンクと、それらに付随する get パラメーターを保持して、返す XML の種類を決定できるようにしたいと考えています。

.aspx 終了リンクを .ashx リンクに書き換え/リダイレクトすることが可能です。それとも、IIS サーバーがすべての .aspx を正しく解釈しない原因になりますか?

0 投票する
2 に答える
1816 参照

.net - HTTP POST 経由で XML データを IHttpHandler に送信すると、HttpRequestValidationException が発生する

別の Web サイトから通常の HTTP POST を介して送信された XML データを受信する IHttpHandler 実装を作成しています。実装のプロトタイプは次のとおりです。

この単純なページで実装をテストしています。

問題は、投稿されたデータから「入力」値を読み取ろうとすると、xml 文字列が含まれている場合、取得するのは HttpRequestValidationException だけです。使ってみた

web.config で、validate="false" 属性を httpHandles セクションのハンドラー宣言に入れますが、結果はありません。

ハンドラーで投稿された xml を読み取るにはどうすればよいですか? (このタスクには IHttpHandler を使用する必要があることに注意してください)。

編集: フレームワークのバージョン: 4.0、IIS 7.x

皆さん、ありがとうございました!:)

0 投票する
1 に答える
2103 参照

asp.net - IHttpHandlerからの応答を圧縮するときの「応答フィルターの無効な使用」

ファイルを返すIHttpHandlerがあります。Telerik RadCompressionを使用して自動的に、またはを使用してフィルターを明示的に設定することにより、応答ストリームが圧縮される場合

ブラウザに返される応答は正しいですが、応答の最後にHTMLがあります。HTMLには例外が含まれています:

応答が圧縮されていないことを確認した場合、応答には例外が含まれていません。

どうしたの?

0 投票する
0 に答える
427 参照

.net - 認証を適切に行うために IHttpHandler を取得するにはどうすればよいですか?

IHttpHandlerオプションで認証を適用できる実装がいくつかあります。

私はもともと独自の基本認証を展開していましたが、IIS の機能を使用して、展開するユーザーが使用する認証の種類を制御し、ハンドラーが現在のユーザーが要求したアクションの実行を許可されているかどうかを確認できるようにしたいと考えています。

ユーザーがアクションを実行できるかどうかを判断して 401/403 を返すのは簡単ですが、IIS に関連する HTTP ヘッダーを応答に追加して、クライアントに資格情報を返すように要求する方法はわかりません。手動で追加することはできますが、実際には基本認証を実装することしかできず (これは私が最初に行ったことです)、振り出しに戻ります。

HttpContext関連するヘッダーを応答に追加するように指示する、呼び出すことができる魔法のメソッドはありますか?

IHttpModuleそして、より一般的には、ASP.Net ページのライフサイクルの認証イベントに干渉するために実装に頼ることなく、私がやろうとしていることは可能ですか?

0 投票する
3 に答える
2503 参照

c# - IHttpHandler で特定の HttpException (#0x80072746) をキャッチする方法

たとえば、ファイルの送信中にユーザーがウィンドウを閉じると、この HttpException (0x80072746 - リモート ホストが接続を閉じた) がスローされる可能性があるようです。ファイルを小さなブロックで送信し、クライアントがまだ接続されていることを確認しても、例外が発生する可能性があります。この特定の例外をキャッチして無視できるようにしたいと考えています。

HttpException で提供される ErrorCode は Int32 です - 小さすぎて 0x80072746 を保持できません。

0 投票する
1 に答える
1259 参照

asp.net - ASP.NET でセッション値を保持するにはどうすればよいですか?

私は実装IHttpHandlerIRequiresSessionStateて使用しcontext.Sessionていますが、セッションで値を設定した後、次のリクエストで失われます。値を永続化するにはどうすればよいですか?

2 番目の呼び出しはこれと似ていますが、この関数を呼び出したときに設定された値は、次の要求でも失われます。

ASP.NET でセッション状態の値を永続化するにはどうすればよいですか?

0 投票する
1 に答える
1291 参照

jquery - ASP.NET アプリケーションで失われたセッション値

ASP.NET で HttpHandler クラスを作成し、*.test パスですべての要求を処理するように Web サイトを構成しました。

Setup メソッドには、次のようなコードがあります。

ただし、DoStep メソッドでは、context.Session.Count = 0 および context.Session["Game"] は NULL です。クライアント側では、jquery を使用してこれらの関数を呼び出します。このような呼び出しは次のようになります。

問題は、ASP.NET が JavaScript から送信されたこれらの要求が同じセッションに属していることを認識していないことであり、そのためにセッションの値が失われていると思われます。次のリクエストを識別するために、Cookie情報などを送り返す必要があると思いますが、実際にはわかりません。

どんな助けでも本当に感謝しています。

0 投票する
2 に答える
356 参照

asp.net - ASP.NETアプリケーションでHttpHandlerを使用すると、どのような異なるカスタマイズが可能ですか?

HttpHandlerを深く掘り下げると、ASP.NETアプリケーションをカスタマイズするための優れた方法が提供されることがわかりました。ASP.NETを初めて使用し、HttpHandlerを使用して可能なさまざまなカスタマイズについて知りたいです。多くのWebサイトがそれらの実装方法について説明していますが、ASP.NETがHttpHandlerを使用してすでに提供しているもの以外のいくつかのユースケースを知っておくと便利です。

0 投票する
1 に答える
222 参照

asp.net - IHttpHandlers による JavaScript でのローカライズ

ASP.NET の Http ハンドラで .resx ファイルにアクセスする最良の方法は何ですか?

JavaScriptでそれらにアクセスする必要があります。私の目標は、IHttpHandler を介して JSON でシリアル化することです。問題は、要求言語に従ってどの .resx をロードする必要があるかを単純に判断できないことです。

ありがとう!

0 投票する
1 に答える
1073 参照

inversion-of-control - キャッスルウィンザーとIHttpHandlerとIHttpHandlerFactory

クライアントにjavascript(Extを使用)とサーバーに.NETがあるRIAアプリケーションを開発しています。json-rpcには、(少なくとも私にとっては)優れたライブラリであるJayrockを使用しています。シンプルでうまく機能します、私は過去にそれを使用しました。

JayrockはWebハンドラーを使用してjson-rpcリクエストを処理し、IHttpHandlerを実装し、いくつかの属性を持つJayrockクラスから派生するクラスをコーディングし、残りはブラウザーにjavascriptクラスを提供してその魔法を実行します。

これで、通常、Webハンドラーにはパラメーターのないコンストラクターがありますが、それらにDIを使用し、windsorを使用して依存関係を解決したいと思います。

だから、私は次のようないくつかのクラスを持っています

だから、今問題は、解決を行うためにウィンザーを真ん中に置く方法です。周りを検索した後、春のように見えることから、IHttpHandlerFactoryを試して、次のようにコーディングできると思います

ashxファイルにファクトリを使用するようにWebアプリを構成し、global.asaxにコンテナーを作成し、URLをIDとしてハンドラーを構成し、コンテナーをWebキャッシュに登録します。

これは素晴らしい解決策だと思いますか?または、ここで欠けているものがありますか?コンテナーによってWebハンドラーを解決する別の方法はありますか?

進歩してくれてありがとう