ASP.NET MVC cookie duplicate -


when add cookie in response, request getting 2 duplicate cookies. here code:

    httpcookie cookie = request.cookies[constants.cart_cookie_key]; // 1 "cart" coookie received client browser.     if (cookie != null)     {         request.cookies.remove(constants.cart_cookie_key); //remove it. there no cookie in request         cookie.expires = datetime.now.addyears(2);         cookie.value = "test";        //response empty until         response.cookies.set(cookie); // add response, there 2 "cart" cookies in request. wtf?     } 

it's important me have harmonized values, because still have use value request in remaining process. when add modified value response, request getting horrible mess.

you removing cookie request , adding new 1 response knows in state of request...

may suggest use owinmiddleware modifying response cookies since you're using compatible stack anyway?

it's pretty easy plug correct phase of request.

public class cartcookiemiddleware : owinmiddleware {     public cartcookiemiddleware(owinmiddleware next) : base(next)     {      }      /// <summary>     /// process individual request.     /// </summary>     /// <param name="context"/>     /// <returns/>     public override async task invoke(iowincontext context)     {          // register event when response headers sent         context.response.onsendingheaders(state =>         {             // response state             var resp = (iowinresponse)state;             // request state             var req = resp.context.request;              var cookie = req.cookies.firstordefault(c => c.key.equals(constants.cart_cookie_key, stringcomparison.ordinalignorecase)).value;              if (cookie != null)             {                 resp.cookies.delete(constants.cart_cookie_key);             }             else             {                 cookie = "test";             }              resp.cookies.append(constants.cart_cookie_key, cookie, new cookieoptions { httponly = true, secure = req.issecure });          }, context.response);          await next.invoke(context);     } } 

Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -