Что такое PWA. Как работают Service Workers

Поделиться
HTML-код
  • Опубликовано: 6 янв 2025

Комментарии • 294

  • @VladilenMinin
    @VladilenMinin  2 года назад +4

    Исходный код тут: t.me/js_by_vladilen/339
    Получить профессию Frontend разработчика - bit.ly/3a6IZCn

  • @олегспирин-р4р
    @олегспирин-р4р 3 года назад +438

    С детского сада знаю, что ПВА необходим для апликейшн !!!

  • @VladilenMinin
    @VladilenMinin  3 года назад +185

    Будете использовать технологию для своих приложений?)

    • @romanbolshiyanov
      @romanbolshiyanov 3 года назад +5

      1000 смирённых поклонов!!! Спасибо я так давно ждал!!!
      Я буду использовать обязательно потому, что:
      1) это реальные клиенты которых я получаю из поиска, так как сайты с PWA ранжируются выше, а значит клиентов!
      2) продавать приложения по цене сайта намного проще, чем сайт!
      И много много многое!!!

    • @404piano
      @404piano 3 года назад

      Конечно, спасибо, не знал об этом

    • @amatorBolivarGames
      @amatorBolivarGames 3 года назад +12

      Да совместно с NUXT и VUE)))
      Было бы круто увидеть видео по стеку: vue-spa + pwa

    • @ВячеславАрхипов-я1в
      @ВячеславАрхипов-я1в 3 года назад

      Огромное тебе спасибо

    • @zhmenia
      @zhmenia 3 года назад

      Сложно сказать. Развернуть такое приложение очень просто, но:
      а) рядовой пользователь знать не знает как его установить, и отсюда вытекает:
      б) AppStore такое приложение публиковать не будет, а в iOs, из Safari к примеру, его установить - целая история
      Это очень клевая технология, но практического применения в ней мизер.

  • @alexdemchenco
    @alexdemchenco Месяц назад

    Спасибо за как всегда великолепные уроки. Пожалуй лучшие в Ютьюбе по глубине и доступности изложения. Очень круто

  • @andreyzavarygin8981
    @andreyzavarygin8981 3 года назад +10

    Круто! Спасибо, Владилен!
    Как раз писал что интересно узнать про PWA!

  • @Vladimir-mj3bj
    @Vladimir-mj3bj 3 года назад

    ле, давненько я не видел, чтобы так просто и без лишней воды объясняли тему, лукас и подписка

  • @St3rnhunt3r
    @St3rnhunt3r 3 года назад +5

    Такой кайф, когда на стажировки дали pwa сделать, и есть такой канал как твой.

  • @ЕкатеринаМашнина-ж2р

    Как вовремя нашла ваш урок, просмотрела, хоть поняла что к чему, ещё хорошо что в консоли все объясняете, кроме как ошибок, в ней ничего не знаю, в другие вкладки и не заходила, а тут прям находка, кучу открытий для себя сделала, если что, я новичок, которого посадили в сложный проект, без знания языка и сказали освоить за короткий срок, за 2 недели научилась оформлению на html, css, так же освоила axios, api, да и вообще кучу всего, а тут на днях сказали посмотреть и изучить PWA, чтоб знала что к чему, сутками не сплю, учеба😅

  • @SanSaHbI4
    @SanSaHbI4 3 года назад +5

    Большое спасибо за труд, ценим и ждём продолжение про более продвинутые концепции PWA)

  • @Tiburtsy
    @Tiburtsy 8 месяцев назад

    Отлично! Как раз сегодня начал разбираться с тем, что такое PWA. Оказалось, под мои задачи подходит. Теперь нужно делать вёрстку под комп и мобильник.

  • @mishakhripko6242
    @mishakhripko6242 6 месяцев назад

    Внятная речь, качественная подача. Спасибо за труд!

  • @maks2135
    @maks2135 3 года назад +14

    Спасибо за видео!
    Интересно было бы еще посмотреть как это реализовать внутри приложения на том же Vue || React

  • @АлишерАзимов-д8ш
    @АлишерАзимов-д8ш 3 года назад +1

    почти весь свой js изучаю с этого канала) Был бы рад увидеть гайд PWA в практике с каким то полезным сайте

  • @pinkierar_real
    @pinkierar_real Год назад

    Ой, спасибо огромное! Это видео - реально ценный клад.
    Я вообще не понимал, как так возможно закешировать страницу, чтобы она открывалась без интернета. Гуглил гуглил, и ничего. А оказывается есть волшебные три буквы: PWA

  • @amatorBolivarGames
    @amatorBolivarGames 3 года назад +65

    Да, было бы неплохо разобрать тему обновления PWA при обновлении сайта на хосте))

    • @ArtiomNeganov
      @ArtiomNeganov 3 года назад

      Я ради этого и гуглю, вот сюда попал... Но кажется зря

    • @Timoffey
      @Timoffey 3 года назад

      @@ArtiomNeganov нагуглил что-нибудь? А то я только сейчас докопался до service workers, до этого пытался сбросить кэш при перезагрузке

    • @ДмитрийСитников-ш2х
      @ДмитрийСитников-ш2х 11 месяцев назад +1

      ​@@Timoffey ну как, 2 года прошло. Нагуглил?

    • @DS-iz4xw
      @DS-iz4xw 10 месяцев назад

      @@ДмитрийСитников-ш2хну как? Месяц прошел.

  • @ЧеловексТопором
    @ЧеловексТопором 3 года назад +24

    О, качественная годнота!
    Благодарю за проделанный труд и за то, что делишься знаниями!

  • @DmytroPrutkevych
    @DmytroPrutkevych 3 года назад +1

    Спасибо, Владилен! Как всегда - локанично, доступно и исчерпывающе!

  • @rinat_kam
    @rinat_kam 3 года назад +7

    Спасибо, Владилен. Лайк, колокольчик, все дела 👍

  • @ArtikMan1994
    @ArtikMan1994 3 года назад

    Только по работе вспоминал фронт лид об этом, я начал гуглить вер воркеры, узнавать что такое pwa, и тут бац, твое видео как раз очень в тему и вовремя. Спасибо) не зря - лучший фронтенд канал на ютубе

  • @ProstoDen4ikChannal
    @ProstoDen4ikChannal Год назад

    Спасибо за урок. Всё понятно и доступно. Сэкономил кучу времени. Кстати изучаю твои курсы на udemy, тоже очень доволен. Всем рекомендую

  • @evgen_frontend_rostov
    @evgen_frontend_rostov 2 года назад

    Первый раз посмотрел на скорости х2, чтобы просто понимать, что это и зачем😅 Однозначно снова пересмотрю, когда буду внедрять) Спасибо тебе!

  • @СергейКацер-и1х
    @СергейКацер-и1х 3 года назад +3

    Очень интересно, спасибо! Хотелось бы ещё больше!🦾

  • @a_pifagor
    @a_pifagor 3 года назад +1

    Всё чётко, освежил знания, жду видос про workbox!

  • @vladimirmarkov6563
    @vladimirmarkov6563 3 года назад +1

    Не успел я проголосовать за эту тему, как она появилась) Владилен мое уважение!!!

  • @opanashenki
    @opanashenki 3 года назад

    Модно, стильно, молодёжно. Давно хотел видосик про пва. Сразу лайк!

  • @АлександрНевский-г3п
    @АлександрНевский-г3п 3 года назад +6

    Я только начинаю изучать какую либо технологию и Владилен сразу выпускает видео по ней)

  • @romanbolshiyanov
    @romanbolshiyanov 3 года назад

    1000 смирённых поклонов!!! Спасибо я так давно ждал!!!
    Я буду использовать обязательно потому, что:
    1) это реальные клиенты которых я получаю из поиска, так как сайты с PWA ранжируются выше, а значит клиентов больше!
    2) продавать приложения по цене сайта намного проще, чем сайт!
    И много много многое!!!

  • @aleksandrgradov7859
    @aleksandrgradov7859 3 года назад +2

    спасибо огромное! как всегда супер! Было бы интересно послушать более расширенный курс по СВ и с более подробным рассмотрением)))

  • @denisvradiy8503
    @denisvradiy8503 3 года назад +1

    Очень круто! Хотелось бы более продвинутый курс на примере более сложного pwa !

  • @serhiigerkhard6745
    @serhiigerkhard6745 3 года назад

    Спасибо за отличный материал! Будет очень интересно узнать о более продвинутых темах в концепции PWA

  • @deniska5957
    @deniska5957 3 года назад

    я буквально пару дней назад так же ютуб установил и ещё подумал как это работает) вон оно что оказывается. Теперь хочется глубже погрузиться и изучать

  • @sidr555
    @sidr555 3 года назад +4

    Отличный урок! Хотелось бы узнать про использование геолокации и bluetooth в PWA

  • @TrumpsOfDesign
    @TrumpsOfDesign Год назад

    Спасибо за ролик, дает отличное базовое понимание того, что это и зачем

  • @MPushY
    @MPushY 3 года назад +27

    Отличный туториал, никак руки не доходили чтобы разобраться :) А тут все разжевал :) Было бы круто послушать о Advanced решениях по PWA и фреймворках, WorkBox :) Спасибо.

  • @ode2877
    @ode2877 3 года назад

    Давно пора было эту тему раскрыть, круто спасибо)

  • @fallenstar358
    @fallenstar358 3 года назад

    Ещё этого не хватало) Благодарю!

  • @туман-е9к
    @туман-е9к 3 года назад +1

    Владилен Здоровья, Успехов ...ПВА это клей

  • @Egorka-vl7ce
    @Egorka-vl7ce 3 года назад

    О да! Развитие темы pwa категорически интересно. Например как можно кэшировать пользовательский ввод и передавать инфу при появлении сети. Большое спасибо!!!

  • @_ZUBR_
    @_ZUBR_ 3 года назад

    спасибо! Очень-очень актуальное сейчас видео PWA технологии! Пожалуйста выпускайте новые видосы по этой теме. Работа с железом телефона например, непаханное поле )

  • @Yevhenii_wnd
    @Yevhenii_wnd 3 года назад

    Супер актуальное и полезное видео. Огромное спасибо за такую ценную информацию.

  • @luchick6852
    @luchick6852 3 года назад +1

    Ждем более продвинутую работу с PWA)

  • @ЕВГЕНИЙЕЛИСЕЕВ-о2п
    @ЕВГЕНИЙЕЛИСЕЕВ-о2п 3 года назад

    Спасибо! лучшее что я видел по pwa

  • @alexander_frolov_14
    @alexander_frolov_14 3 года назад +9

    Нужно больше уроков по PWA, Владилен ) Нотификашки, workbox и т.д.

  • @НатальяСемешенко-т4х

    Отличный туториал, хотим ещё! 😀

  • @dmitriipokhilenko8228
    @dmitriipokhilenko8228 3 года назад +1

    Полезное видео, спасибо! Очень вовремя)

  • @alekstar79
    @alekstar79 3 года назад +9

    Полезный материал! Да, было бы не плохо разобрать настройку workbox...

  • @makep2434
    @makep2434 3 года назад +1

    Спасибо за видео урок, ждем разбор work box

  • @alexeychernov3902
    @alexeychernov3902 3 года назад

    Спасибо за видео, просто и понятно о PWA и service workers.

  • @sergeyplotnikov5031
    @sergeyplotnikov5031 3 года назад

    Очень крутая тема! Большое спасибо за такое простое и понятное объяснение!

  • @egolege
    @egolege 3 года назад

    Понравилось ! Спасибо!
    Можно развивать эту тему дальше

  • @blagodum
    @blagodum 3 года назад

    кайф! спасибо! жду более глубоких уроков по теме!

  • @mrogovets
    @mrogovets 3 года назад

    Спасибо огромное! Очень полезное видео!!! Интересно будет сделать PWA на Angular!

  • @mdreal3264
    @mdreal3264 3 года назад

    Спасибо за видео. Ещё как понял начало. Го глубокое. И ещё спасибо за предоставленный контент.

  • @mysongslove
    @mysongslove 3 года назад

    Еще такой момент, на 42:10 в 49 строке пишется await caches.match('/offline.html'), но ведь у нас запрос динамический, т.е. делается fetch за данными, т.е. ожидается, что в ответ придет json/объект, а не html, или я чего то не понимаю, объясните плиз?

  • @WeCoding
    @WeCoding 3 года назад +3

    Спасибо большое за урок! Было бы круто если сняли видео про WorkBox

  • @batradzbazzaev
    @batradzbazzaev 2 года назад

    Спасибо за курс👍

  • @jekaren6424
    @jekaren6424 3 года назад +1

    Спасибо большое! Единственное, если установить на смартфон и отключить интернет а потом обновить страницу - пишет "Не удается получить доступ к сайту".
    Насколько я понял, там нужно как-то по другому использовать ServiceWorker, чтобы работал кеш на смартфоне ?

  • @АнастасияШилько-ш8щ

    Спасибо, Владилен, за урок!

  • @denisbielishev
    @denisbielishev 3 года назад

    Как всегда супер видео. Ждём ПВА на Ангуларе

  • @unknownWakeborder
    @unknownWakeborder 3 года назад

    Спасибо большое, это очень важная и нужная штука!

  • @maxymstoiakevych4139
    @maxymstoiakevych4139 3 года назад +2

    Круто! Хотелось бы увидить как сделать PWA с реактом

  • @tomozi1
    @tomozi1 3 года назад +3

    Классный обзор. Можно добавить к курсу по angular

  • @danielgaleyev137
    @danielgaleyev137 3 года назад

    Подскажите пожалуйста, как называется плагин, который автоматически описывает, т.е. например : type: 'listener', listener 'event'. подписывает вот эти type и listener?

  • @NikitaFedin-l4t
    @NikitaFedin-l4t 3 года назад

    Каким образом в случае отсутствия интернета загружается файл sw.js? Он же не захеширован нами (что происходит с хешем браузера тоже не ясно, он там сам по себе живет).
    Соответственно когда в app.js доходит момент до регистрации воркера, откуда он берется?

  • @eugenia9999
    @eugenia9999 3 года назад

    Оу маай !!!))) Спасибо, интересная тема и очень полезное видео !!)))))

  • @artemijeka
    @artemijeka 2 года назад

    Спасибо! Интересная тема.

  • @evgeniykolmak5459
    @evgeniykolmak5459 Год назад

    При переходе на Манифест версии 3, CSP запрещает выполнение сторонних скриптов и теперь не получается подключить offline.html

  • @Andrey53283
    @Andrey53283 3 года назад

    Лайк за невероятно годный контент, не глядя

  • @iventeye
    @iventeye 2 года назад +1

    Внедрил PWA в свой проект. В первую очередь делал это ради возможности установки на главный экран, потому что это будет весьма удобно для использования. Но потом и идея с кэшем и возможностью запуска оффлайн мне тоже показалась неплохой и я решил сделать и это. И, как я понял, работает это весьма странно и нестабильно. Я заметил, что если зайти в приложение с включенным интернетом, то при перезаходе в него без интернета кэш подгружается и все работает нормально. Но если же попытаться зайти сразу без интернета, то будет надпись: "Не удаётся получить доступ к сайту", кэш просто не подгружается. Почитал комментарии и понял, что не только у меня такое. Может кто знает, как это фиксится, пишите, буду рад. Но в целом, я думаю это сказывается сырость технологии. На бумаге, потенциально, это достаточно перспективно, но работает пока так себе. Единственное, ради чего можно это добавлять, так это для возможности установки на главный экран и еще может уведомлений. Хоть и не пробовал играться с уведомлениями, но почитав комментарии, понял, что и там наблюдаются проблемы в работе.

  • @pawpawqwertyuiop
    @pawpawqwertyuiop 9 месяцев назад

    hi! после деплоя приложение / страница в браузере работали в офлайне? локально (с liveServer) работает, на гитхабе - нет(

  • @juliarizhenkova5305
    @juliarizhenkova5305 3 года назад

    Большое спасибо! Было очень познавательно и интересно!

  • @pavelnachigin3869
    @pavelnachigin3869 3 года назад

    Отличное видео, спасибо! Было бы здорово посмотреть как это выглядит на vue, а так же как это совмещается с SSR

  • @ode2877
    @ode2877 3 года назад +3

    Круто а можно подробнее про эту тему с workbox, вывести кнопку Установить в ui сайта, push notification и прочие апихи которые сейчас доступны а pwa?)

  • @Лёва-т4п
    @Лёва-т4п 2 года назад

    А кэшируется ли браузером сам файл сервис вокера sw.js? Напрмер, изменили версию кэша c 's-app-1' на 's-app-2', но если sw.js закэшируется в браузере (как обычные js скрипты), то получается приложение будет использовать старую версию кэша 's-app-1'

  • @andranikmeneshyan5829
    @andranikmeneshyan5829 3 года назад

    Кстати можно вопрос, а почему когда приложение запускаем через live-server то при отключении сети файлы отдаются с кеша
    а если зайти по url от firebase и попробовать тоже самое то ничего не отдается

  • @vladimirlevin6799
    @vladimirlevin6799 3 года назад

    Владилен, спасибо огромное! Хотелось бы увидеть, как это работает на смартфоне, например с картой.

  • @ErnestGaliullin
    @ErnestGaliullin 3 года назад +1

    Владилен как всегда топ . Я за то чтоб познакомиться с более глубокими концептами.

  • @d.koshkarev
    @d.koshkarev 3 года назад

    Спасибо за урок. Можно пару вопросов?
    1. Все сделал по уроку. Тестирую в Chrome, Yandex, Firefox. Без файлов: app,js manifest.json, sw.js - lighthouse отрабатывает отлично. Разумеется PWA - нет. Подключаю файлы. На всех трех браузерах в адресной строке появляется значок установки. Устанавливается Работает, но lighthouse отрабатывает и видит, что это PWA только через Yandex. Chrome и Firefox - не воспринимают. Чистил все и куки и темпы и все что мог. Что я не так делаю?
    2. При входе через сотовый (chrome, yandex браузеры) - не предлагает установить приложение. Почему? Ведь браузер видит PWA?
    3. Психанух. Купил еще один домен в зоне .ru (до этого .online был) просто перезалил файлы - все ок. Впечатление, что PWA живет своей жизнью...
    4. Заметил, что если впервые выскакиват на сотовом уведомление "Установить приложение" и если сделать отмену, то при повторном посещении сайта - больше подобное не предлагается... Только если полностью очистить историю браузера. Что весьма не удобно, т.к. большинство пользователей в начале скорее всего отменят установку. Можно ли это как-то настроить?
    Буди признателен за любые советы. Может кто сталкивался. Второй день бьюсь - нет закономерности. Более того теперь Chrome и Firefox виснут при тесте lighthouse/// HELP

  • @ЛеонидБорисов-ч5х
    @ЛеонидБорисов-ч5х 3 года назад

    Спасибо огромное конечно нужно продолжение

  • @юрай-з1ы
    @юрай-з1ы 3 года назад

    подскажите пожалуйста что нужно изменить в коде что была возможность применить данный проект(p.w.a) для своего сайта.? пожалуйста подскажите.

  • @pumbo_nv
    @pumbo_nv 3 года назад

    29:38 неверно. при возврате из промиса не обязательно делать await. Если вернуть другой промис, то результат будет тот же для вызывающего кода.
    ps) отличный туториал. просто решил придраться к словам.

  • @ЧингизЕрмагамбетов-р9н

    Здравствуйте, подскажите пожалуйста, у меня PWA, все настроено, прикрутил web push, однако пуш-уведомления приходят не всегда. А для меня очень важно чтобы уведомления доходили. Я так понимаю, это сервис воркер в спячку глухую уходит, и уже оттуда не видит новые уведомления, или дело не в этом? Кто знает, как это исправить? Помогите пожалуйста!

  • @DAROM-TK
    @DAROM-TK 3 года назад

    Есть нюанс с той частью, где описывается , как удалять старые версии кэша, при добавлении новой версии.
    Так как юзер не ставит галку update on reload, у него кэш обновится только после того как он закроет страницу, а потом снова откроет

  • @multiply87
    @multiply87 3 года назад

    Спасибо за видео. Очень познавательно и полезно

  • @danandavi3374
    @danandavi3374 3 года назад

    Владилен, добрый день! Не мог бы ли ты добавить к себе в видео или может у тебя есть источник, где показано как реализовать кастомную кнопку "добавить на главный экран". Хочется создать свою кнопочку, но инфы толком не нашел.

  • @borisoffdenis
    @borisoffdenis 3 года назад

    Я читал о SW на MDN и там запись в кэш завернута в e.waitUntil(). У вас нет. Получается это не обязательно?

  • @narutominer
    @narutominer 3 года назад +1

    Было бы интересно посмотреть на более продвинутые ПВА на Реакте ещё и с использованием пуш уведомлений.

  • @mysongslove
    @mysongslove 3 года назад

    Отличный ролик, все разжевал, спасибо большое! Единственное, заметил, что на видео, время от времени, на вкладке с сервис воркером, в девтулзах появлялось сообщение об ошибке рядом с файликом sw.js, видно на 23:50 и на 18:26, про что это?

  • @aleksandrgurnak3911
    @aleksandrgurnak3911 3 года назад

    Очень круто, спасибо!

  • @deniskravets1831
    @deniskravets1831 3 года назад

    Отличный урок!!! Спасибо!!!

  • @РусланАлешин-т8ю

    Спасибо большое за курс!
    Хотел еще узнать, можно ли отправлять закэшированные данные на api сервер, когда интернет соединение восстанавливается? может кто-то знает и подскажет)

  • @waldemar_dev
    @waldemar_dev 3 года назад +1

    Да, было бы неплохо развернуть данную тему дальше.

  • @TheBorninmotion
    @TheBorninmotion 3 года назад

    ура ! Разбери офлайн часть и background sync будет интересно.

  • @fallenstar358
    @fallenstar358 3 года назад +1

    Гоу видео про Workbox :) И продвинутые темы в PWA

  • @sergrajes6320
    @sergrajes6320 3 года назад

    тема очень интересна, но только так и не понял - как создать/получить apk такого сайта, чтобы кто угодно мог установить у себя на мобильном и использовать сайт, как приложение,

  • @kvazimode2
    @kvazimode2 3 года назад

    Спаисбо за видео. Было интересно. Только вопрос: cashes.match() сравнивает только имена файлов или содержимое тоже? Если, к примеру, поправили стили, кэш обновится или пользователь должен будет его чистить?

  • @tekken14kz
    @tekken14kz 3 года назад

    Спасибо огромное! А продолжение видео будет?) Очень интересует баннер установки приложения и отправка уведомлений/сообщений через Firebase. Сейчас как раз начал интегрировать в Vue2+Leaflet PWA.

  • @artemzirka9675
    @artemzirka9675 3 года назад

    Спасибо, хороший урок!

  • @asurahan
    @asurahan 3 года назад

    все просто и понятно. мне как бекендеру особенно интересно изучать чего у вас на фронте происходит. спасибо буду прокачивать скилы в этом направлении

  • @РоманГонзалес-Валдес

    Спасибо большое)
    Можете пожалуйста сделать видео на тему Workbox?)