Как я могу получить значение сеанса в коде от страницы обработчика - PullRequest
0 голосов
/ 30 января 2012

Я использую uploadify для загрузки аудиофайла.Он использует обработчик upload.ashx для загрузки файла на сервер.Я хочу получить путь к файлу на моей странице aspx.Поэтому я установил значение сеанса в обработчике, чтобы получить путь к файлу в aspx, но я не могу это сделать.Как я могу получить значение пути к файлу от обработчика к странице .aspx

   public class Upload : IHttpHandler,IRequiresSessionState        {   
    public void ProcessRequest (HttpContext context)         {        
    string savepath = context.Server.MapPath(tempPath);     
    context.Session["VideoFile"] = savepath;     }  } 

На моей странице aspx, когда я пытаюсь получить путь к файлу

      DocLink = Session["VideoFile"].ToString();

значение сеанса всегданоль.Как я могу получить значение сеанса в коде

 string path= HttpContext.Current.Request.Cookies["VideoFile"].ToString();

Я пробовал это, даже если это ноль

1 Ответ

0 голосов
/ 30 января 2012

Если вы вызываете его с контекстом, подобным context.Session["VideoFIle"], и все в порядке, то вторая возможная причина заключается в том, что у вас нет настроек, исправляющих путь к свойствам файлов cookie.

Проверьте и настройте доменв httpCookies на web.config, чтобы быть уверенным, что это без www. и иметь возможность читать его с любой страницы, запущенной в вашем домене

<httpCookies domain="domain.com" httpOnlyCookies="false" requireSSL="false" />

Почему, потому что если вы не установилидомен на куки-файлах, тогда куки-файл записывается вместе с доменом, который был прочитан с URL-адреса, и сеанс подключается к куки-файлу.Если ваш домен изменяется, например, вы называете его с помощью www.domain.com, и при вызове одной страницы вы используете domain.com, тогда cookie не совпадают, а сеанс не совпадает.

Примечание

Внутри вашего обработчика контекст исходит из параметра, вызывающего ProcessRequest, а не из HttpContext.Current.Request.Может быть, это еще одна проблема в вашем коде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...