Praveen81 Ответов: 0

Как я могу прочитать заголовки HTTP-запросов в ASP.NET приложение веб-форм?


Привет,

У меня две страницы в веб-приложении ASP.NET (Страница1.aspx и Страница2.aspx-файл). Я добавляю "пользователь" в качестве заголовка Http-ответа на Page1.aspx, а затем перенаправляю на Page2.aspx. Сейчас на Страница2.aspx-файл, мне нужно прочитать пользователя HTTP-заголовок 'и хотите, чтобы отобразить это в элемент управления Label.


Заголовок Http-ответа "USER" успешно добавлен для Page1.aspx(проверено на Fiddler), но то же самое не появляется в заголовке Http-запроса Page2.aspx.

Что я уже пробовал:

Страница1.aspx-файл....

protected void Button1_Click(object sender, EventArgs e)
{
    String URL = "Page2.aspx";
    HttpContext.Current.Response.AddHeader("USER", "admin");
    Response.Redirect(URL);
}


Страница2.aspx-файл....

protected void Page_Load(object sender, EventArgs e)
{
    try
    {
        if (!IsPostBack)
        {
            if (HttpContext.Current.Request.Headers.Get("USER") != null)
            {
                string tUserName = Convert.ToString(HttpContext.Current.Request.Headers.Get("USER"));
                if (tUserName != null || tUserName.ToString() != "")
                {
                    Label1.Text = tUserName;
                }
            }
            Label2.Text = HttpContext.Current.Request.Headers.Get("X-AspNet-Version");
        }
    }
    catch (Exception ex)
    {
        throw ex;
    }

}

F-ES Sitecore

Заголовок, который вы добавляете в ответ, не идет непосредственно на страницу 2, он отправляется в браузер, и .net добавляет еще один заголовок, который позволяет браузеру знать, куда перенаправить. Затем браузер делает запрос на страницу 2 так же, как и на другую другую страницу, он не копирует заголовки в новый запрос.

Поэтому в принципе вы не можете использовать заголовки для этого, вместо этого вы должны хранить данные, которые хотите передать в сеансе.

Richard Deeming

Звучит как решение для меня. :)

Thanks7872

Я не понимаю, как, по-вашему, это правильный способ "передавать" данные между страницами?

A_Griffin

Это относится к "ужасам кодирования".... не просто передача каких-либо старых данных, но и токен администратора!

Karthik_Mahalingam

читать это
https://stackoverflow.com/a/4070437/1147428

0 Ответов