Извлечение переменных сеанса .NET из клиентского скрипта - PullRequest
1 голос
/ 15 февраля 2012

Я пытаюсь сделать это с помощью javascript, но, возможно, есть более простой / лучший способ.

У меня есть приложение .NET, которое устанавливает переменную сеанса в коде позади. У меня также есть HTML-файлы на веб-сайте, которые создаются на лету и являются статичными, но должны иметь возможность доступа к этим сеансам точно так же (скорее всего, через javascript). Это означает, что если сеанс не установлен, я хочу, чтобы страница HTML перенаправлялась обратно на главную страницу .aspx.

С учетом следующего, это всегда дает мне пустую строку, хотя сеанс распознается на страницах .aspx, есть ли способ преодолеть это?

<script type="text/javascript">
    function doSomething(){
        var someSession = '<%= Session("user") %>';
        alert(someSession)
    }
</script>

Ответы [ 2 ]

1 голос
/ 15 февраля 2012

Статические html-страницы не выполняют никакого серверного кода.Они просто обслуживаются как есть.

<%= Session("user") %>

по определению включает выполнение кода на стороне сервера.Вот почему он работает на страницах aspx, а не в html.

Способ преодолеть это - преобразовать html-страницы в aspx-страницы или использовать Ajax-запрос для обратного вызова на сервер и получения информации о сеансе.из веб-службы или другим способом.

0 голосов
/ 02 декабря 2015

Как уже было сказано, это должна быть активная страница и правильный код:

var sessionValue = '<%= Session["user"] %>';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...