HttpModule Cookie Problem

E

Eric Marthinsen

Hello-

I wrote a HttpModule to inspect the user's current page and to assign a
source a content category to them. The problem is that when it runs, it wipes
out users cookies which logs them out of the site and wipes out their basket.
I can't recreate the error in any sort of test or staging environment, so I'm
at a complete loss as to what might be causing this. Any ideas? Here's the
important bit of my code:

#region IHttpModule Members

public void Init(HttpApplication context)
{
context.BeginRequest += new EventHandler(OnBeginRequest);
}

public void Dispose()
{
// TODO: Add CategoryManager.Dispose implementation
}

#endregion

private void OnBeginRequest(object sender, EventArgs e)
{
try
{
//get the http application
HttpApplication context = (HttpApplication)sender;

string pageID = GetPageID(context);
string categoryID = GetCategoryID(context);
string source = GetSource(context);

//add the info that can be preserved to the user's cookie
HttpCookie categoryCookie = new HttpCookie("cmCategory", categoryID);
context.Response.Cookies.Add(categoryCookie);

HttpCookie sourceCookie = new HttpCookie("cmSource", source);
context.Response.Cookies.Add(sourceCookie);

//add all values to HttpContext.Items for the actual tags to use
TaggingSession.PageID = pageID;
TaggingSession.CategoryID = string.Format("{0}:{1}", source, categoryID);
//create the composite category with the source and category
}
catch(Exception ex)
{
ExceptionManager.Publish(ex);
}
}

OnBeginRequest calls a few helper functions (GetSource, GetCategory, etc.).
These methods only do reads and inspect the Request.Cookie collection, the
current URL (for querystrings) and an XML file (to look up page IDs). I can
post that as well, if nevessary, but it's a lot of code to go through.

Regards-
Eric
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,009
Latest member
GidgetGamb

Latest Threads

Top