12/16. Регистрация и авторизация в приложении. Поддержите лайкосом хотя-бы)
@AleksandrNeo Жыл бұрын
Закончу дедлайны на проекте и приступлю к урокам, спасибо огромное!
@bjol_Dg Жыл бұрын
гуд, зашло, давай ещё)
@РомаТищенко-я3с11 ай бұрын
Спасибо большое! Но очень запутанно объясняете для начинающих. Буду пересматривать, чтобы все понять про аутентификацию.
@РомаТищенко-я3с11 ай бұрын
Со второго раза разобрался. Но, как я понимаю, токены в основном идут по 2: аксэсс и рифрэф. И нам надо добавлять логику отправки рифреша, если сервак нам пришлет код 4ХХ(вроде, 402).что мы не авторизованы
@Virisound Жыл бұрын
Я думал бэкенд тяжелый, а тут авторизация во фронтенде - запутаешься. И этот диспатч уже везде мерещится). P.S. Нужно отдохнуть) спс
@lets_try_js Жыл бұрын
ахаахахх))
@Virisound Жыл бұрын
@@lets_try_js ))))
@black_light6 ай бұрын
Столкнулся с такой фигней, что при смене пользователя axios продолжает отправлять в запросах токен от предыдущей авторизации, хотя в localStorage лежит новый токен. Авторизация проходит как положено, всё логинится, но на бэке в реквесте висят данные о старом пользователе. UPD: порешал через axios interceptors.
@svloex10 ай бұрын
1:13:00 в dispatch(login(data)) почему в login параметром data идёт если datat это IUser а IUser это id, token, email, а в login мы ожидаем пароль и логин ?
@svloex10 ай бұрын
А этот login не из services а из slice
@JohnDoe-m3z5z Жыл бұрын
👍👍
@Zhenkaaf11 ай бұрын
когда логинюсь, выскакивает предупреждение : Смените пароль. Пароль, который вы только что использовали, был раскрыт в результате утечки данных. Измените его прямо сейчас в Google Менеджере паролей почему так происходит? и как с этим бороться?
@lets_try_js11 ай бұрын
это к этому курсу никакого отношения не имеет, это от браузера
@SergioDev001 Жыл бұрын
Что за расширение в VSC, которое подсказывает стили при их вводе?
@lets_try_js Жыл бұрын
tailwind что-то там
@SergioDev001 Жыл бұрын
@@lets_try_js спасибо
@ВасилийПавленко-ъ3с Жыл бұрын
В мене питання наскільки безпечно світити пароль в пейлоад в консолі в нетворк?
@Virisound Жыл бұрын
34:28 - Видео про "FormEvent": kzbin.info/www/bejne/eIrWgnhpg81sf6c
@lets_try_js Жыл бұрын
Спасибо за поддержку комментами )
@Virisound Жыл бұрын
@@lets_try_js =)
@НазарЗубрик2 ай бұрын
ахуенный исходник
@aizim8503 Жыл бұрын
если мы используем store, так зачем токен хранить в LocalStorage? не безопасней ли token хранить в store?
@lets_try_js Жыл бұрын
А зачем его скрывать? И что тогда делать после перезагрузки страницы ?)
@aizim8503 Жыл бұрын
@@lets_try_js согласен, посмотрел одну работу. там я тоже записывал токен в ЛС только посредством персист
@romanmed90358 ай бұрын
можно ли сделать предварительную загрузку содержимого стора перед его созданием?
@lets_try_js8 ай бұрын
не совсем понял) стор - это хранилище, и что бы там что-то было, сперва туда нужно что-то поместить)какие данные вы хотите подгружать ?)
@romanmed90358 ай бұрын
@@lets_try_jsобычно хранилище сначала создается а потом уже акшенами загружаются данные. но какие-то простейшие задаются заранее при создании. но хочется заранее поместить туда список который загружается из апи.
@EugeneKh.7 ай бұрын
Исходя из Вашего комментария, положить в стор, которого нет, какие-либо данные, невозможно. Для этого существует т.н. начальное состояние - initial state - которым вы определяете начальное содержимое. И да, редьюсер - это чистая функция, и что-либо подгружать нужно через асинхронную санку или использовать ртк квери. Обычно, чтобы наполнить стор сущностями при загрузке приложения, в корневом App компоненте и дергается эта санка для загрузки данных с апи.
@romanmed90357 ай бұрын
@@EugeneKh. именно initial state и заполнить прежде чем создавать стор. и тогда он создастся уже с данными которые в initial state были загружены. дергать в апп или еще где-то совсем другая история.
@galaxyalfa2197 Жыл бұрын
Почему-то мой редактор ругается на тип any
@lets_try_js Жыл бұрын
Правильно делает. Использовать тип any плохая практика. Но есть такие моменты, когда этого не избежать. Простой пример : вы используете какой нибудь пакет/зависимость который попросту еще не перешел на typescript, и в таком случае вероятно придется в каких то моментах использовать тип any. Но если вы пишите просто код, без всяких зависимостей из вне то any нужно избегать
@Bugagych Жыл бұрын
Я исключил password таким образом. Есть ли более элегантный вариант? @Controller('user') export class UserController { constructor(private readonly userService: UserService) {} @Post() @UsePipes(new ValidationPipe()) async create(@Body() createUserDto: CreateUserDto) { const { user, token } = await this.userService.create(createUserDto); const userResponse = plainToClass(UserResponseDto, user, { excludeExtraneousValues: true, }); return { user: userResponse, token }; } }