我想知道是否有办法从通用处理程序中编写和读取cookie。
目前,当我在浏览器开发者工具中检查cookie时,它们都是空的。
这是我的代码:
public void ProcessRequest(HttpContext context)
{
CreateCookie(Username,SessionID);
}
public void CreateCookie(string userName, string sessionID)
{
HttpContext.Current.Response.Cookies["SESSION"]["SESSIONID"] = Encryption.EncryptString(sessionID);
HttpContext.Current.Response.Cookies["USER"]["USERNAME"] = Encryption.EncryptString(userName);
}
我不能用SessionState元素替换我的cookie,因为代码可以在服务器场上执行,搞乱了会话。
有什么想法吗?
谢谢!
答案 0 :(得分:3)
处理程序是否实现了IReadOnlySessionState和IRequiresSessionState接口来访问和操作会话变量。
http://msdn.microsoft.com/en-us/library/system.web.sessionstate.ireadonlysessionstate.aspx
http://msdn.microsoft.com/en-us/library/system.web.sessionstate.irequiressessionstate.aspx