Примеры кода: github.com/How... Курс «100 лекций по программированию» habr.com/post/... #сессия #session #куки #http #cookie #nodejs #javascript #js #routing
Пікірлер: 49
@gagogoga7943 жыл бұрын
Этот чувак просто бомбический материал даёт! Не останавливайся!
@TimurShemsedinov3 жыл бұрын
Это еще посмотри kzbin.info/www/bejne/gmi8mJhrhc1jsJY
@gagogoga7943 жыл бұрын
@@TimurShemsedinov смотрел 👍🏻 Могу сказать тоже самое, материал отличный.
@Ajax222able3 жыл бұрын
классная лекция. можно было начать с того, что такое сессии и зачем они нужны
@ellisdos67143 жыл бұрын
классная лекция, механизм кук и сессий, пояснен просто и красиво, кое где подправил в файлах и у меня завелось, спасибо очень хорошо для понимания
@user-uz3im1ct6e4 жыл бұрын
Спасибо большое за лекцию!)
@antonanton227435 жыл бұрын
Спасибо
@TimurSevimli Жыл бұрын
Спасибо! Как всегда, было очень интересно)
@kulishkul3 жыл бұрын
Спасибо!
@user-uz3im1ct6e4 жыл бұрын
В лекции на 56 минуте вы говорите что уже писали пример роутинга на чистой ноде. Подскажите пожалуйста, а можно где нибудь посмотреть этот пример. Именно усложненный и расширенный пример, с передачей переменных, с регулярными выражениями?
@TimurShemsedinov4 жыл бұрын
Есть, но лучше подождать стартер кит, о котором я тут рассказываю, буквально пару недель и будет хороший пример не только с роутингом, но и с целым списком возможностей kzbin.info/www/bejne/fXu8Y5eveptmaJo&t=480
@user-ye8zh3ep7m4 жыл бұрын
Это уже законченый проект или вы его еще дописывали в других лекциях?
@TimurShemsedinov4 жыл бұрын
Это заготовка, как и в других лекциях, из нескольких таких заготовок можно скрутить проект. Чуть позже я буду делать видео, как скручивать. Сейчас занят подготовкойикурса по ООП и по базам данных
@user-bs9lo1ib9l4 жыл бұрын
Спасибо)
@MrMaratamba4 жыл бұрын
Метод Session.restore точно должен быть синхронным? А если callback для storage.get в Session.restore будет вызван позже чем завершен ответ клиенту? Или в роутере мы не увидим сессию хотя она есть в хранилище, но не успела оттуда считаться? Разве не следует сделать и Session.restore асинхронным (возвращающим промис?)
@MrMaratamba4 жыл бұрын
Отвечаю сам себе - вижу на github уже исправленный код.
@TimurShemsedinov4 жыл бұрын
См. тут 1:26:00 я из restore промис возвращаю
@user-ye8zh3ep7m4 жыл бұрын
1:32:00-1:32:12 можна пример кода с await new ?
@TimurShemsedinov4 жыл бұрын
Вот тут пример асинхронного конструктора github.com/HowProgrammingWorks/AsyncAwait/blob/master/JavaScript/4-constructor.js
@LogopedLTD Жыл бұрын
я так понимаю, что и это не лучший способ генерировать токен?) в нем разве не должно быть рашифровано какие-то данные? или как вы и говорите идея JWT вам не нравиться
@ilyakozel54722 жыл бұрын
У вас нет желания написать MIT E-Learning CMS с видео разбором кода?
@TimurShemsedinov2 жыл бұрын
Ни малейшего
@MrMaratamba4 жыл бұрын
Ещё вопрос по удалению: client.token = undefined; client.session = null; Почему для session используется именно null а для токена undefined?
@TimurShemsedinov4 жыл бұрын
Потому, что null - это пустое значение ссылочного типа, а undefined - скалярного
@houston91143 жыл бұрын
что сначала учить node или nest? на работах требуют nest, можно ли обойтись без node?
@TimurShemsedinov3 жыл бұрын
Сначпла js и ts, потом асинхронное программирование, потом нода, а потом уже какие-то фреймворки. Иначе конечно можно по аналогии что-то писать, но не будешь особо понимать, как оно работает и по 100 раз переделывать будешь
@houston91143 жыл бұрын
@@TimurShemsedinov понял, спасибо
@lishtvansergey55953 жыл бұрын
Нет опасности что generateToken() сгенерирует токен, который уже существует?
@TimurShemsedinov3 жыл бұрын
Есть конечно, но это порядка 1 раз за октиллион лет, если генерить всеми вычислительными ресурсами человечества
@TimurShemsedinov3 жыл бұрын
на таких допущениях вся криптография работает, иногда добавляют механизмы выявленния коллизий с перегенерацией, но это не обязательно, при таких вероятностях
@lishtvansergey55953 жыл бұрын
@@TimurShemsedinov а что мы будем делать если хакер украдет наш токен? или тут обеспечивается безопасность за счет куки вместо localStorage? Но как же тогда быть с Cross-Site request forgery?
@TimurShemsedinov3 жыл бұрын
@@lishtvansergey5595 Ничего страшного, тогда мы будем взломаны.
Бывают в жизни минуты, когда все решают секунды, и эти минуты длятся часами
@unev4 жыл бұрын
Вы рассказывали про jwt в этой или какой-либо иной лекции? Можете рекомендовать грамотного спеца по node.js из англоязычного мира?
@TimurShemsedinov4 жыл бұрын
Нет, и не буду, мне не нравится идея jwt
@unev4 жыл бұрын
@@TimurShemsedinov это было бы не менее интересно послушать
@TimurShemsedinov4 жыл бұрын
Anna Henningsen
@unev4 жыл бұрын
@@TimurShemsedinov интересный спец, но маловато просветительской деятельности.
@TimurShemsedinov2 жыл бұрын
@@Sebastian-zz8id Yes, having just long unique random ID as a session identifier will be much more reliable and secure then JWT because of multiple aspects and complexities in JWT right implementation and potential security gaps
@PerfectSwingDance5 жыл бұрын
44:00 лучше писать const PATH = path.join(__dirname, 'sessions') Так как пути Windows и Linux отличаются. Из-за этого не правильно работает проверка на безопасность кода
@TimurShemsedinov5 жыл бұрын
join нужен, но он не защищает от path traversal, нужно делать .startsWith, а вот не поддерживать windows это совершенно нормально
@PerfectSwingDance5 жыл бұрын
@@TimurShemsedinovБудут ли лекции по веб безопасности в Node.js? Было бы очень интересно
@TimurShemsedinov5 жыл бұрын
@@PerfectSwingDance это не моя прямая специализация, но думаю да, какие-то основы можно дать. Есть много докладов по безопасносьи в ноде на разных javascript конференциях, пока поищите в ютюбе
@TimurShemsedinov4 жыл бұрын
@@PerfectSwingDance Уже есть kzbin.info/www/bejne/hpXJoGR9Ysx8bNU
@LogopedLTD Жыл бұрын
Не ставьте всякие гадости из нпм!
@fedordostoevskiy4209 Жыл бұрын
Не доживём наверное с такими делами. Это я про expires cookies😂. Вообще-то не смешно...