ASP.Net HTTPHandler - Page.Response オブジェクトから Cookie を書き込みますか?

StackOverflow https://stackoverflow.com/questions/131110

質問

特定のファイルタイプへの呼び出しをリッスンし、それに応じて処理する HTTP ハンドラーを作成しています。私の HTTP ハンドラーは .bcn ファイルをリッスンし、ユーザーのコンピュータに Cookie を書き込み、画像を送り返します。これは広告バナーで使用され、ユーザーがバナーを見ているとタグ付けされ、後で当社のサイトにアクセスしたときに特別取引を提供できるようになります。

私が抱えている問題は、Page オブジェクトにアクセスすることです...もちろん、HTTPHandler は実際にはページではありません。Response オブジェクトは Page オブジェクト内に存在するため、Cookie を書き込むためにそれにアクセスすることはできません。

これを回避する方法はありますか、それともこれを行うには標準の aspx ページの使用に戻す必要がありますか?

ありがとうございます。グレッグ

役に立ちましたか?

解決

IHttpHandler から ProcessRequest メソッドに渡される HttpContext オブジェクトから Response オブジェクトにアクセスできます。これは、Page.Response によって公開されるオブジェクトと同じです。

他のヒント

IHttpHandler で定義された ProcessRequest() メソッドには、HttpContext 参照が渡されます。この HttpContext オブジェクトには、使用できる Response および Request という名前のプロパティがあります。

ああ、そうだね…cKramer に感謝します :)

動作するコードは次のとおりです。

HttpContext.Current.Response.Cookies.Add(cookie);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top