【发布时间】:2014-01-03 20:56:16
【问题描述】:
我在向 Page.Request 和 Page.Response 标头添加值时遇到一些问题,并且通过重定向使键和值保持/持久。
我有一个枚举跟踪代码,我想将它放在标题中,以跟踪用户在结帐之前如何浏览我的网站。
我正在使用此代码将标头添加到响应和请求上下文中。
var RequestSessionVariable = context.Request.Headers["SessionTrackingCode"];
if (RequestSessionVariable == null)
{
context.Response.AddHeader("SessionTrackingCode", ((int)tracker).ToString());
context.Request.Headers.Add("SessionTrackingCode", ((int)tracker).ToString());
}
else
{
if(!RequestSessionVariable.Contains(((int)tracker).ToString()))
{
RequestSessionVariable += ("," + ((int)tracker).ToString());
context.Request.Headers["SessionTrackingCode"] = RequestSessionVariable;
context.Response.Headers["SessionTrackingCode"] = RequestSessionVariable;
}
}
网站内必要控件Page_Load中发生的方法调用:
trackingcodes.AddPageTrackingCode(TrackingCode.TrackingCodes.ShoppingCart, this.Context);
标题SessionTrackingCode 是他们的,但在Response.Redirect("~/value.aspx") 之后RequestSessionVariable 始终为空。重定向上是否会发生某些事情会清除我添加的标头?或者我在添加标题键和值时做错了什么?
this 等于:
public partial class Cart : System.Web.UI.UserControl
【问题讨论】:
标签: c# asp.net http-headers