powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Перенаправление на Login страницу в Angular 4
22 сообщений из 22, страница 1 из 1
Перенаправление на Login страницу в Angular 4
    #39634304
Lessyp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть single page приложение на аsp.net, вся логика конечно построена на ajax запросах, каждый такой запрос должен проверять ответ на то, истекла-ли сессия, и если да, то перенаправить на логин страницу, этот код находится в каждом методе, каждом компоненте. Можно все это как-то обьединить в одно место что-б не плодить один и тот-же код по всей системе?
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39634315
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lessyp,

повесить ajax hook, который при получении кода 401 редиректит на логин страницу. естественно нужно отключить авторедирект в asp.net.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39634965
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
гуглите: angular 4 interceptor. Там уже много примеров.
Если у вас обычный модуль Http, то надо будет его заменить на HttpClient.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39634977
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lessyp,

Я сделал так.

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

Один запрос на всё приложение (оно в корневом компоненте) дергает сервер раз в 15 секунд, на предмет "сессия жива еще?"

Если "чо-не-так", то "обнуляется" переменная " currentLoggedUser ".
За этой переменной смотрит спецовый обработчик и как только она становится равной NULL -
обработчик "обнуляет" все sensitive данные и выкидывает юзера на страницу логина.

Без хуков.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39634993
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортом,

401, 403 не обрабатываешь? просто вываливаешься с ошибкой? )
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635132
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАгнец за бортом,

401, 403 не обрабатываешь? просто вываливаешься с ошибкой? )

Если сессии нет, то уходит на панель логина.

Если нет прав, то юзер не сможет зайти - куда не надо - нет кнопки/интерфейса.

Если слишком умный и вручную вбил URL (прислали по почте), а прав нет, то отправится туда, куда можно вверх по иерархии.

Элемент --> Список элементов --> Список справочников --> Начальная страница.

Ошибки не вываливаются.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635145
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомЕсли сессии нет, то уходит на панель логина.

Запрос может уйти между очередной проверкой наличия сессии и её потерей. Тогда что будет? Ошибка? Ты же не в курсе, есть там сессия или нет, 10 секунд назад может и была.


Агнец за бортомЕсли слишком умный и вручную вбил URL (прислали по почте), а прав нет, то отправится туда, куда можно вверх по иерархии.

Речь про AJAX-запросы.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635156
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttТы же не в курсе, есть там сессия или нет, 10 секунд назад может и была.

Это да.
У юзера есть шанс потупить несколько секунд на тост "Ошибка при получении данных".
Потом - на страницу логина.
Вообще - кейс редкий, и возникает, когда "уполномоченный" сбрасывает сессию юзера вручную. Так что тут не до финтифлюшек.


hVosttРечь про AJAX-запросы.

У меня других и нет (в данном приложении).

Все URL-ы - обрабатываются на клиенте - являясь путем к компонентам.
А сами компоненты - дёргают данные, на которые у юзера может не быть прав.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635308
Lessyp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buredгуглите: angular 4 interceptor. Там уже много примеров.
Если у вас обычный модуль Http, то надо будет его заменить на HttpClient.
спасибо, примерно то, что надо
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635312
Lessyp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомОдин запрос на всё приложение (оно в корневом компоненте) дергает сервер раз в 15 секунд, на предмет "сессия жива еще?"

ну у нас немного другой случай, аутентификация на токенах, технически ничто не мешает знать валидный он или уже нет и без пингов, просто по времени истечения, просто хочется этот код как-то в одном месте иметь
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635384
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомЭто да.
У юзера есть шанс потупить несколько секунд на тост "Ошибка при получении данных".
Потом - на страницу логина.

Вопрос в том, само приложение переходит на логин после ошибки "при получении данных", или вынужден топтать F5? )

Агнец за бортомВообще - кейс редкий, и возникает, когда "уполномоченный" сбрасывает сессию юзера вручную. Так что тут не до финтифлюшек.

То, что для разработчика выглядит "редким исключением", вываливается в первую очередь у пользователей, и за ошибки, в которых юзер ни разу не виновать, бьют больнее. И вопрос-то фигня.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635493
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttили вынужден топтать F5?

В контексте моего случая - F5 приведет к перезагрузке всего приложения. Но на страницу логина.

Отвечая на вопрос - ничего жать не надо - само перейдёт.


hVosttТо, что для разработчика выглядит "редким исключением"

Не совсем понял. "Редкое исключение" - это "вдруг пропала" сессия. "Вдруг" она может пропасть, если её кто то удалил.

Во всех остальных случаях "пропаданием" сессии рулит сам юзер. Посредством кнопки "выхАд"
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635515
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомОтвечая на вопрос - ничего жать не надо - само перейдёт.

Это ж ТРУ СПА!
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635589
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомНе совсем понял. "Редкое исключение" - это "вдруг пропала" сессия. "Вдруг" она может пропасть, если её кто то удалил.

Ну ты же сам сказал, между проверками сессии есть 15 секунд. Ну да ладно, проехали.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635591
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомЭто ж ТРУ СПА!

Тру это микро-сервисы в докерах :)
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635704
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомhVosttТы же не в курсе, есть там сессия или нет, 10 секунд назад может и была.

Это да.
У юзера есть шанс потупить несколько секунд на тост "Ошибка при получении данных".
Потом - на страницу логина.
Вообще - кейс редкий, и возникает, когда "уполномоченный" сбрасывает сессию юзера вручную. Так что тут не до финтифлюшек.все больше склоняюсь к мысли, что сессии - зло.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39635705
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ой, кажись сессию со стейтом перепутал. короче, я за stateless.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39636089
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariyвсе больше склоняюсь к мысли, что сессии - зло.

В общем смысле да, зло. В реальности, правильные сессии добро, в правильном контексте применения.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39636209
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttправильные сессии добро,

Что такое правильные сессии?
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39636212
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомhVosttправильные сессии добро,

Что такое правильные сессии?

Сессии, которые приносят больше пользы, чем вреда. Например, контекст безопасности, который сопровождает работу пользователя, слишком большой, чтобы перемещаться в зашифрованной куки и слишком затратно восстанавливать его на каждый запрос.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39636244
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАгнец за бортомпропущено...


Что такое правильные сессии?

Сессии, которые приносят больше пользы, чем вреда. Например, контекст безопасности, который сопровождает работу пользователя, слишком большой, чтобы перемещаться в зашифрованной куки и слишком затратно восстанавливать его на каждый запрос.

Ну вот, Антониарий так не считает.
...
Рейтинг: 0 / 0
Перенаправление на Login страницу в Angular 4
    #39636296
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомНу вот, Антониарий так не считает.

Ну в целом стоит считать сессию злом и по возможности делать стейтлес.
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Перенаправление на Login страницу в Angular 4
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]