Записываете куки из ASP.Net HTTPHandler - объекта Page.Response? - PullRequest
2 голосов
/ 25 сентября 2008

Я создаю обработчик HTTP, который прослушивает вызовы определенного типа файла и обрабатывает его соответствующим образом. Мой HTTP-обработчик прослушивает файлы .bcn, ​​затем записывает файл cookie на компьютер пользователя и отправляет обратно изображение ... это будет использоваться в рекламных баннерах, так что пользователь помечается как видящий баннер, и тогда мы можем предложить специальные предложения когда они зайдут на наш сайт позже.

Проблема, с которой я столкнулся, заключается в получении доступа к объекту Page ... конечно, HTTPHandler на самом деле не является страницей, и, поскольку объект Response находится внутри объекта Page, я не могу получить доступ к нему для записи печенье.

Есть ли способ обойти это, или мне нужно вернуться к использованию стандартной страницы ASPX для этого?

Спасибо, куча .. Грег

Ответы [ 3 ]

1 голос
/ 25 сентября 2008

Вы можете получить доступ к объекту Response из объекта HttpContext, переданного методу ProcessRequest из IHttpHandler. Это тот же объект, представленный Page.Response.

0 голосов
/ 25 сентября 2008

ах да ... спасибо, куча cKramer:)

Рабочий код:

HttpContext.Current.Response.Cookies.Add(cookie);
0 голосов
/ 25 сентября 2008

методу ProcessRequest (), определенному в IHttpHandler, передается ссылка HttpContext. Этот объект HttpContext будет иметь свойство с именем Response and Request, которое вы можете использовать.

...