Advertisement
Guest User

Untitled

a guest
Jun 14th, 2010
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.08 KB | None | 0 0
  1.  
  2. using System;
  3. using System.Text.RegularExpressions;
  4. using System.Web;
  5.  
  6. namespace iPaper.Web.ArrCookieRestorer
  7. {
  8.     public class ArrCookieRestorer : IHttpModule
  9.     {
  10.         public void Dispose()
  11.         { }
  12.  
  13.         public void Init(HttpApplication context)
  14.         {
  15.             context.BeginRequest += context_BeginRequest;
  16.         }
  17.  
  18.         private void context_BeginRequest(object sender, EventArgs e)
  19.         {
  20.             try
  21.             {
  22.                 HttpContext context = HttpContext.Current;
  23.                 string serverHash = context.Request.QueryString["ARRIPARRAffinity"];
  24.  
  25.                 if (serverHash != null)
  26.                 {
  27.                     string cookieHeader = context.Request.Headers["Cookie"];
  28.                    
  29.                     if (cookieHeader != null)
  30.                     {
  31.                         if (cookieHeader.Contains("IPARRAffinity="))
  32.                             cookieHeader = Regex.Replace(cookieHeader, "IPARRAffinity=[0-9a-f]+;?", "IPARRAffinity=" + serverHash + ";");
  33.                         else
  34.                             cookieHeader += "; IPARRAffinity=" + serverHash;
  35.  
  36.                         context.Request.Headers["Cookie"] = cookieHeader;
  37.                     }
  38.                     else
  39.                         context.Request.Headers.Add("Cookie", "IPARRAffinity=" + serverHash);
  40.                 }
  41.             }
  42.             catch
  43.             { }
  44.         }
  45.     }
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement