2010-03-12 74 views
1

我需要添加一个自定义标题类似 MYNAME:巴拉吉 ,我需要通过 Request.ServerVariables从.aspx文件访问[“HTTP_MYName”]; 应该返回“巴拉吉”。我需要很多像这样的变量,它会动态添加。 请帮忙。如何添加和访问自定义页眉在C#

此外,我不能在任何.Net控件或对象(如 Cookie,会话,应用程序,隐藏变量等)中持久保存此变量,或者无法将其存储在d/b中并在需要时将其恢复,只需要在HTTP标题中。

请发送C#代码如何添加此变量并将值返回到.aspx文件中。

回答

1

你是什么意思“获取价值回.aspx文件”? HTTP头旨在用作浏览器的指令,以及如何解释给定的内容。您无权访问文档中的这些值。

设置自定义HTTP标头是很容易的,但是:

Page.Response.AddHeader("MyCustomHeader", "VerySecretValue") 

更新我的答案按你的意见。 如果您需要在HTTPModule和ASPX页面之间传输信息,则可以使用HTTPContext.Current,因为这两个位置保持不变。 所以,你通过

HttpContext.Current.Items.Add("SecretKey", "SecretValue"); 

添加它,并把它读作

string s = HttpContext.Current.Items["SecretKey"]; 
+0

好的,我明白你的意思。是否有可能设置值(在httpmodule或httphandler)并通过Request.ServerVariables [“”] – Balaji 2010-03-12 15:00:21

+0

更新我的答案 – naivists 2010-03-12 15:28:03