2009-06-03 16 views
0

ASP.NETで純粋なコードからフォームに投稿することは可能ですか?基本的には、Response.Redirect()をシミュレートする必要がありますが、GETの代わりにPOSTを実行し、いくつかのRequestパラメータを設定します。これは、すべてHTTPハンドラのProcessRequestメソッドで起こります。フォームに投稿するIHttpHandler

注:Response.Redirectは実際にHTTP 302アイテムをブラウザに戻しただけで、上記は不可能であり、私が話していることを行うためのより良い方法があると推測しています。別のページと意図したターゲットに設定されたアクションを持つフォームを使用することについて説明します。 HttpContextに私が知りませんがいくつかの神秘的なメソッドがある場合は素晴らしいだろう。

EDIT:

OKが、そうIHTTPハンドラからHTMLとJavaScriptの束をINGの)基本的にResponse.Writeを(回避を考え出しました。これはポストを行い、ポストを行うための中間ページを持っているとシミュレートしますが(ハンドラ内で可能な限り多くのコードを保持します)。

答えて

0

確かに。ハンドラー内のWebRequestクラスを使用してPOSTを実行できます。あなたのハンドラからそれを呼び、あなたは大丈夫でしょう。

+0

WebRequest呼び出しの結果をハンドラでResponse.Writeしますか?問題は、次のページにシームレスに終わるためにブラウザが必要なことです。 –

+0

Response.Writeまたは何かの並べ替え、はい。いくつかの複雑なケースでは、何らかの処理を行うJavaScriptを含むページを作成してからwindow.locationを設定する必要がありますが、一般的にはブラウザによって要求され、望ましい結果の出力が生成されます。 –