Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Объясните как поддерживать сессию (https://javascript.ru/forum/css-html/42188-obyasnite-kak-podderzhivat-sessiyu.html)

ksa 16.10.2013 16:17

Цитата:

Сообщение от assd18
Тоесть мне нужно на каждой странице отправлять запрос залогинен или нет?

У тебя кто формирует те страницы? Или они статичные (хтмл)?

assd18 16.10.2013 16:18

Хтмл, я уже его изменяю если что-то приходит с сервака.

ksa 16.10.2013 16:29

Цитата:

Сообщение от assd18
Хтмл

Тогда всякий раз нужно у сервера спрашивать... Если не авторизован или вышел таймаут сессии - редиректить на страницу регистрации.

assd18 16.10.2013 16:32

Тоесть он первый раз ввел, я записал логин и пароль в куки и при переходе на каждую страницу шлю запрос с его паролем и логином? Как быть со скрытностью пароля?

ksa 16.10.2013 16:40

Цитата:

Сообщение от assd18
я записал логин и пароль в куки

Зачем куки если есть сессион? :blink:

У кук своя жизнь и назначение, а у сессии сое назначение и жизнь.

Цитата:

Сообщение от assd18
на каждую страницу шлю запрос с его паролем и логином?

Просто спрашиваешь "есть ли в сессии отметка об авторизации"?

Цитата:

Сообщение от assd18
Как быть со скрытностью пароля?

Он тебе вообще дальше не нужен... :no:

Сервер должен в сессию записать все, что нужно для этого пользователя...

Но вообще так лучше не делать. :)
Будет сподручнее если серверный язык сам будет влиять на те страницы

ksa 16.10.2013 16:43

Пример на CSP...

В каждую страницу инклюдится
<head>
...
<!--#include virtual="/mvr/inccsp/head/access.csp"-->
...
</head>


такая вставка
<script type="text/javascript">
if ('#($g(%session.Data("access")))#'=='') {
	top.location='#($g(^mvr("mvr"),"/mvr/"))#login.csp'
}
</script>

Если неавторизован... Или истек таймаут сессии... Происходит переход на страничку регистрации.

ksa 16.10.2013 16:46

После генерации страницы будет такой

<script type="text/javascript">
if ('1'=='') {
	top.location='<URL_задачи>login.csp'
}
</script>

Или такой
<script type="text/javascript">
if (''=='') {
	top.location='<URL_задачи>login.csp'
}
</script>

Контент...

ksa 16.10.2013 16:46

Цитата:

Сообщение от assd18
Тоесть посылаю запрос, а он мне в джейсоне тру-фолс?

Можно и так... :yes:

Но мой вариант (с использованием генерации страниц) более удобен.

assd18 16.10.2013 16:50

ок, ясно, разобрался, спасибо)

Basili4 07.11.2013 22:01

>юзер перешел на другую старницу все так же, повляется кнопка логин
у Вас полностью вся страница перестраивается. Поэтому все так и происходит. Или у вас одно страничное приложение но данные о логине пользователя хранятся в объекте который уничтожается


Часовой пояс GMT +3, время: 01:10.