Что такое CORS и зачем он нужен? По простому

Поділитися
Вставка
  • Опубліковано 25 лис 2024

КОМЕНТАРІ • 220

  • @1.015
    @1.015 3 роки тому +38

    Автор, большое спасибо за объяснение, но ничего непонятно.
    ;-)

    • @pavlenkoat
      @pavlenkoat  3 роки тому +1

      Что непонятно?

    • @1.015
      @1.015 3 роки тому

      @@pavlenkoat это был один из комментариев для продвижения ролика. Первый комментарий, что все понятно, а на второй вы ответили. )))
      Успехов в развитии канала!
      ;-)

    • @pavlenkoat
      @pavlenkoat  3 роки тому

      Спасибо

    • @SbWereWolf
      @SbWereWolf 3 роки тому

      @@pavlenkoat понятно что браузер отправляет серверу, и понятно какую пару заголовков надо отдавать с сервера, но тема сисек не раскрыта.
      Про PUT/PATCH/DELETEни слова, и эти типы запросов не будут работать, пока их не разрешишь.
      Мне казалось, что предварительные это точно OPTIONS и возможно HEAD, браузер с их помощью как раз узнает CORS политику сервера и в соответствии с ней, что то дальше разрешает или запрещает.
      Я год назад маялся с этим CORS, подробностей не помню. Надеялся в этом видео освежить воспоминания и узнать как правильно настроить NGINX.
      Надеялся будет практическая часть, но видимо это не твой формат.
      А было бы прикольно из браузера отправлять запросы на сервер, который не настроен, получать ошибки в браузере, и постепенно настраивать сервер, добавлять одну за другой опции в конфиг и смотреть как меняется реакция браузера.

    • @pavlenkoat
      @pavlenkoat  3 роки тому

      @@SbWereWolf Я JS не знаю, а знакомые фронтендеры были заняты. Сожалею об этом, но сроки поджимали.

  • @ivanshka1759
    @ivanshka1759 Рік тому +3

    Достаточно простое объяснение не самой легкой для понимания темы. Годно)

  • @intruder70
    @intruder70 Рік тому +31

    все равно не понял

    • @intruder70
      @intruder70 8 місяців тому +11

      ща опять посмотрел, нифига не понял. захожу в комменты и вижу свой старый коммент

    • @shadymindyt
      @shadymindyt 7 місяців тому

      ​@@intruder70я тебя на кодебай видел

    • @intruder70
      @intruder70 7 місяців тому

      ​@@shadymindyt Кодбай тема ❤

    • @riodejaneiro8491
      @riodejaneiro8491 3 місяці тому

      Вот тоже не понимаю, зачем вообще эта тема с сказкой и аналогией, неужели так тяжело просто объяснить как все работает как оно есть а после показать реальный пример

  • @sergeydmitrievsky
    @sergeydmitrievsky 3 роки тому +8

    Важная тема. Спасибо за объяснение. Ее любят спрашивать на собеседованиях 😃 А такие харды - это показатель экспертности.

    • @pavlenkoat
      @pavlenkoat  3 роки тому +10

      Так я специально ходу на собеседования чтобы снимать видео на актуальные темы)))))

  • @timursholokh8520
    @timursholokh8520 3 роки тому +4

    Я буквально 10 минут назад изучал статью про CORS и тут видео по этой теме вышло 🤔

    • @pavlenkoat
      @pavlenkoat  3 роки тому +3

      Большой брат следит за тобой

    • @timursholokh8520
      @timursholokh8520 3 роки тому +1

      @@pavlenkoat Тогда прошу большого брата ещё и видео про прокси сервера выпустить. Мне лично было бы очень интересно послушать 🤗

    • @pavlenkoat
      @pavlenkoat  3 роки тому

      @@timursholokh8520 Nginx? вот видос ua-cam.com/video/ixfnxLqcLOs/v-deo.html

  • @VasilyVorontsov-d1x
    @VasilyVorontsov-d1x 2 роки тому +3

    Спасибо за видео. Классно и понятно. Пример с козлятами вообще огонь!)))

  • @Александр-с1ю2ц

    Супер круто, начал чуток понимать, когда прочитал 5 статей, потом решил зайти на ютуб, эврика! Спасибо!

  • @Павел-р2ь6х
    @Павел-р2ь6х 2 роки тому

    Спасибо! Который раз возвращаюсь к вопросу cors, решил въехать окончательно) Видео отлично легло на ранее прочитанную инфу и заполнило все пробелы.

  • @vladislavpitsuha
    @vladislavpitsuha 7 місяців тому

    Спасибо большое за вашу работу, намного лучше понял принцип CORS. Стоит отдельно оценить пример, креативно и понятно)) Автору успехов и вам тоже, друзья!

  • @Serega5j
    @Serega5j 2 роки тому +1

    Спасибо тебе добрый человек. Немного прояснил эту мутную тему и навел на нужные мысли

  • @sir_damnkrat
    @sir_damnkrat 2 роки тому

    Спасибо огромное, наконец-то понял что за CORS и чем опасна его ошибка валидации

  • @ЕвгенийБусел-т1г
    @ЕвгенийБусел-т1г 3 роки тому +7

    Спасибо за разъяснения, образовательный контент всегда хорошо:) Всё стороннего прогресса и развития :)

  • @ni55an
    @ni55an 3 роки тому +31

    6:32 самый важный момент, так как на собеседованиях я заметил, что те, кто отвечают что такое CORS'ы, не понимают на какой стороне это контролируется. Считают, что эти проверки и отклонение запроса делаются на серверной стороне

    • @pavlenkoat
      @pavlenkoat  3 роки тому +10

      Да-да. Тоже замечал. В ролике я несколько раз говорю об этом, но наверно не так заметно

    • @АлексейНехаев-б4м
      @АлексейНехаев-б4м 3 роки тому +5

      Вы совершенно правы. Самое главное тут понимать что все это делает браузер, сам спрашиваем, сам смотрит заголовки, сам выкидывает ошибку если что-то не так

    • @voidmain90
      @voidmain90 3 роки тому +7

      ну так сервером тоже контролируется. не добавлю я в nginx возможность обращаться к серваку с др домена и браузер залочит. Как раз на сервере и рулится

    • @ni55an
      @ni55an 3 роки тому +3

      @@voidmain90 может что-то и рулится у вас на сервере, то это называется не CORS. Сервер только отдает хэдеры, и не важно будет это nginx или что-то другое. А сам CORS это браузерная технология, а серверы между собой могут спокойно общаться и CORS там ниоткуда не появится

    • @voidmain90
      @voidmain90 3 роки тому +3

      @@ni55an Если браузер рулит тут значит мы на это не можем повлиять? Ещё как можем..и делается это на сервере. Браузер же оценивая заголовки от сервера делает свою работу по блокировки или нет. Но разработчики управляют настройками cors на серваке. Т.е. именно я как разработчик своего апи на сервере решаю кто и с каких урлов ко мне могут прийти а не браузер по каким то своим неведомым/магическим причинам.

  • @UnknownUnknown-v8k
    @UnknownUnknown-v8k 9 місяців тому

    прекрасные ассоциации, спасибо вам за работу!)

  • @TrumpsOfDesign
    @TrumpsOfDesign Рік тому

    Спасибо за ролик, за 8 минут вполне дает общее представление о том, что это и зачем нужно. В моем случае было более подходяще, чем читать огромную подробную пеленку на mdn

  • @evgeniybelkovskiy4896
    @evgeniybelkovskiy4896 2 роки тому

    Благодарим, Антон!

  • @artemfedotov30
    @artemfedotov30 Рік тому

    прекрасные ассоциации, спасибо вам за работу!

  • @Dreamer_78
    @Dreamer_78 Рік тому

    Спасибо брат что объяснил, успехов и процветания твоему каналу!!!

  • @CreateLifeYT
    @CreateLifeYT Рік тому +1

    Красавчик, пересматривал коды и само видео много раз, но благодаря тебе новички поймут данную тему! Спасибо!

  • @arthurhovakimyan1146
    @arthurhovakimyan1146 3 роки тому +2

    Спасибо, за видео.
    Совсем недавно столкнулся с ошибкой CORS.
    Это было при написании Single page application (SPA) на Laravel PHP framework и Vue.js.

  • @kashasa3150
    @kashasa3150 3 роки тому

    огонь, пример с козлятами потрясный. Очень просто и понятно, спасибо!

  • @alextektumanidze8455
    @alextektumanidze8455 6 місяців тому

    Отличное объяснение, автору респект )

  • @agator10008
    @agator10008 3 роки тому +2

    Да, спасибо большое, тестерам тоже знать надо)

  • @MrJet84
    @MrJet84 Рік тому

    Просто офигенно. Спасибо!

  • @p4m3remostone71
    @p4m3remostone71 3 роки тому +1

    Да, хорошая тема, теперь стало более понятно

  • @ЮлияВыборнова-б4р

    вообще супер круто объяснил!!!спасибо тебе!!шикарно!

  • @ТимурМуратов-ж7ж
    @ТимурМуратов-ж7ж 2 роки тому

    Братан хорош! Давай вперёд! Контент в кайф! Можно ещё? Вообще красавчик!

  • @meteysh
    @meteysh Рік тому

    Спасибо Антон!

  • @eb6006
    @eb6006 2 роки тому

    Вот спасибо все объяснил. Теперь понятно. А было не понятно.

  • @themichael8767
    @themichael8767 Рік тому

    Спасибо Вам большое 🤍

  • @mydeviousway
    @mydeviousway 3 роки тому +1

    подход оъяснения нормальный, продолжай в этом же духе

  • @waltermelon3206
    @waltermelon3206 3 роки тому

    Отличный урок, благодарю за информативность, актуальная информация, как всегда на уровне

  • @НикитаСологуб-щ3ц
    @НикитаСологуб-щ3ц 9 місяців тому

    Спасибо! Стало немного понятнее

  • @dogober3861
    @dogober3861 2 роки тому

    Спасибо за объяснения!

  • @Zzepish
    @Zzepish 3 роки тому +1

    Спасибо большое! Очень полезное видео :)

  • @kirillkalita344
    @kirillkalita344 2 роки тому

    Спасибо, понятно и доступно!

  • @life8261
    @life8261 Рік тому

    Спасибо. Классное объяснение.

  • @p.v.a.8638
    @p.v.a.8638 8 місяців тому

    Спасибо за видео)

  • @Rammstas1
    @Rammstas1 2 роки тому

    Боже ну наконец-то нормально обьяснение с примером. Спасибо большое автору, реально помог понять.

    • @inbuckswetrust7357
      @inbuckswetrust7357 Рік тому +1

      объяснение муторное, много воды, а по сути 5 копеек

  • @СергейНикольский-в2о

    Спасибо за объяснение. Да, про то что это браузерная технология и именно на стороне клиента происходит верификация - это очень важная штука.

  • @RuslanTrushov
    @RuslanTrushov 3 роки тому

    Самое главное я понял, что весь контроль происходит на стороне пользователя.
    Спасибо за абстрактный пример.

  • @astkh4381
    @astkh4381 Рік тому

    спасибо за видео.

  • @polinaskvorova5369
    @polinaskvorova5369 3 роки тому +1

    Даже что-то поняла, вроде. Спасибо

  • @AbcDef-nv7qy
    @AbcDef-nv7qy 9 місяців тому

    Спасибо большое!

  • @Yar1sson
    @Yar1sson 2 роки тому

    Спасибо! Очень понятно и просто

  • @ci_cd4834
    @ci_cd4834 3 роки тому

    Приветствую. Пишу еще один благодарный комментарий. И вообще, подобного рода контент чудесен и прекрасен! И даже если будет ЧАС! то это ЧАС ГОДНОТЫ, а не ДОМ2.

  • @alexandershikhov682
    @alexandershikhov682 3 роки тому

    Антон, спасибо за разъяснения! Очень исчерпывающе!

    • @pavlenkoat
      @pavlenkoat  3 роки тому +1

      Всегда пожалуйста))))

  • @eugene782
    @eugene782 3 роки тому +3

    Абстрактные примеры для новичков всегда хорошы

  • @mascai
    @mascai 2 роки тому

    Актуально, спасибо!

  • @МаксимВавилкин-у9ж

    Хорошее видео, спасибо!

  • @1.015
    @1.015 3 роки тому

    Автор, большое спасибо. Все понятно объяснил.
    ;-)

  • @TarasovFrontDev
    @TarasovFrontDev 6 місяців тому +2

    Очень инетересно, но ничего не понятно xD Нужны нормальные примеры: вот мы отправили, получили ошибку; вот мы дописали заголовок - все сработало.

  • @viksench6447
    @viksench6447 2 роки тому

    Супер, спасибо!

  • @МихаилЕфимов-р7л

    Про волка с меркантильной целью смешно получилось)

  • @user-artifact911
    @user-artifact911 2 роки тому

    Про козлятник - Просто ТОП

  • @anatolys9203
    @anatolys9203 2 роки тому

    классный рассказ ))
    спасибо!

  • @user-uq4ix5ie3q
    @user-uq4ix5ie3q 3 роки тому +1

    Благодарность в комментарии!👍🏻

  • @СергейСаввин-ы2щ
    @СергейСаввин-ы2щ 3 місяці тому

    круто, спасибо

  • @ДмитрийЛукьяненко-ь9ы
    @ДмитрийЛукьяненко-ь9ы 10 місяців тому

    Ничего не понятно, но очень интересно

  • @denisavramenko6988
    @denisavramenko6988 3 роки тому

    За козлят - лайк. Интересная интерпритация. ))

    • @pavlenkoat
      @pavlenkoat  3 роки тому

      Благодарю. Стараюсь придумывать что-то необычное. Мне нравится творческий подход, а не слепая теория которую можно в интернете прочитать.

  • @mrdzha9519
    @mrdzha9519 Рік тому

    ничего не понял, но очень интересно! :)

  • @expoliemexpoliem6246
    @expoliemexpoliem6246 7 місяців тому

    спасибо!

  • @naximchik
    @naximchik 3 роки тому +1

    Спасибо

  • @alexandrmoskalev8642
    @alexandrmoskalev8642 3 роки тому +2

    про козлят четко зашло! но немного режет ухо, произношение английских слов

    • @pavlenkoat
      @pavlenkoat  3 роки тому +1

      С разговорным английским туго.

  • @eney1975
    @eney1975 3 роки тому +1

    занятно, почти понятно

  • @katerinak5997
    @katerinak5997 Рік тому

    Spasibo aktualno

  • @tema_skakun
    @tema_skakun Рік тому

    спасибо, мэн)

  • @jaskier6295
    @jaskier6295 Рік тому

    Спасибо хорошее видео, только главный момент я так и не понял, чем эти корсы так опасны.
    переслушал несколько раз 3:06.
    Как можно послать ссылку юзеру даже есть нет корса?
    Корс проверяет чтобы запрос на сервер шёл только с нужных нам доменов.
    Но ведь все запросы и так валидируются, и если что-то не то пришло на сервер, он в любом случае не позволит, хоть со своего домена хоть с чужого.

  • @olesya7232
    @olesya7232 2 роки тому

    Cool, thanks

  • @hulumulu1108
    @hulumulu1108 2 роки тому

    хороший подход

  • @Memver777
    @Memver777 Рік тому

    Класс

  • @Storytelless
    @Storytelless 3 роки тому

    Спасибо!

  • @sergo4220
    @sergo4220 3 роки тому

    хорошо придумал с козлятами, тему раскрыл полностью. Снимай ещё.

  • @MrSirus83
    @MrSirus83 3 роки тому

    Идея хорошая, чуток теории и практика

  • @AndrewLapteff
    @AndrewLapteff Рік тому

    лучший

  • @not4sure
    @not4sure 3 роки тому +1

    ммм, как сейчас помню, как с ними разбирался. Документация вроде есть, всроде все объяснено, а ни черта не понятно, зачем это все происходит, на чьей стороне контролируется. А видос хороший, хотя довольно минималистичный.

  • @gunfudragon
    @gunfudragon 3 роки тому +3

    Вот только с ним недавно любовью занимался на бэке (

    • @NurCamedy
      @NurCamedy 3 роки тому

      Я на фронте

  • @Leon-rv2zm
    @Leon-rv2zm 2 роки тому

    ничего не понятно, но очень интересно)

  • @polark1677
    @polark1677 3 роки тому +4

    Это контроль на стороне браузера, типа браузер не даст вам сделать такой запрос если сервер прислал такие заголовки. Только со стороны браузера это вырубается легче легкого. Например если запустить тот же chrome с ключом --disable-web-security, то все эти корс до жопы.

    • @pavlenkoat
      @pavlenkoat  3 роки тому

      Так это ж для твоей безопасности. Чтобы небыло ситуации которую я описал в видео

    • @polark1677
      @polark1677 3 роки тому

      @@pavlenkoat Ну да точно. Злоумышленники же никак не смогут отключить безопасность браузера.

    • @pavlenkoat
      @pavlenkoat  3 роки тому

      Ну да.

  • @1ifehappens
    @1ifehappens Рік тому

    Куда прописывать эти команды, подскажите? Извините за тупой вопрос)

  • @kind1y
    @kind1y 2 роки тому

    Эти nginx-настройки нужно добавлять на сервере апи, куда я делаю запрос (на другой домен)?

  • @MrRomanvideo
    @MrRomanvideo 2 місяці тому

    Так а что мешает волку взять этот origin header с нашего сайта?

  • @ioncreciun6110
    @ioncreciun6110 Рік тому

    Пасиб

  • @The1nv1s1bleMan
    @The1nv1s1bleMan Рік тому

    Не понимаю... Для того, что бы узнать, уязвим ли тестируемый сайт, мне необходимо импортировать запрос из дэвтулс в постман (к примеру) и внутри постман в заголовках изменить origin на любой другой сайт, и если данный запрос успешно отправляется, то получается что уязвимость CORS обнаружена и надо составлять баг-репорт?

  • @ДмитроНаговський
    @ДмитроНаговський 3 роки тому

    блин классно

  • @user-islamkaz
    @user-islamkaz 2 роки тому

    Cors в react тоже нужен?

  • @asanzhakizhanov3261
    @asanzhakizhanov3261 2 роки тому

    Если я в NGINX server ставлю add header 'Access-Control-Allow-Origin' '*' always - что дает такая запись в настройках NGINX?

  • @duoduoo6732
    @duoduoo6732 Рік тому

    CORS-регулятор общения через аякс? А конкретно тогда это стандарт передачи запросов или конкретная библиотека какого то фреймворка?

  • @Alex123Ax-r3f
    @Alex123Ax-r3f 3 роки тому

    Подскажите где брать драйвера на видео, сетевую карту, wifi: Xubuntu 16.04 lts, ноут Dell Inspiron 1520(2007 год). Или нужно заказывать индивидуальный фикс у программистов, цена? Сетевая вместо 100 даёт 60 мб/с, wifi вместо 50 даёт 20 мб/с, видео страшно тормозит в goole карта в режиме street view.

  • @ProWebCoder2002
    @ProWebCoder2002 2 роки тому

    Отлично объясняете.
    Козлятушки, Программистюшки )))😂

  • @Aleksei_Filatov
    @Aleksei_Filatov 3 роки тому +7

    Сказка учит тому, что нефиг пароль передавать в нехешированном виде

    • @404Negative
      @404Negative 10 місяців тому

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

  • @liko8019
    @liko8019 2 роки тому

    если у меня нет доступа к серверу, каким образом я мог бы достучаться все равно к нему, например изменив hosts в винде?

  • @alimzhanshabarov4204
    @alimzhanshabarov4204 3 роки тому +1

    2 дня раньше бы выпустил видос)

    • @pavlenkoat
      @pavlenkoat  3 роки тому

      2 дня назад оно ещё небыло готово

    • @pavlenkoat
      @pavlenkoat  3 роки тому

      О том что я собирался писать данное видео писал в телеграмме канале

  • @lanfix1320
    @lanfix1320 3 роки тому +1

    Не нравятся конфиги приложения, хотя сам добавил домены в конфиг nginx'а ))

  • @viktoryakovenko757
    @viktoryakovenko757 3 роки тому

    а XSS подвезут?

  • @ihorkovryhin1767
    @ihorkovryhin1767 Рік тому +1

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

  • @ДенисАхметов-т4д

    Ошенама запутанное объяснение. Но пример с козлятами прикольный

  • @ВатквизДеСад
    @ВатквизДеСад 3 роки тому

    добрый день. а что такое CORB?

  • @ovel87
    @ovel87 2 роки тому

    Автор, мне нравится стиль изложения, но html может быть не статичным, а ajax далеко не единственный способ взаимодействия с бекендом.

    • @pavlenkoat
      @pavlenkoat  2 роки тому

      Всё верно. Спасибо.

  • @bogdanroman5100
    @bogdanroman5100 2 роки тому

    Куча ссылок для доната и ни одной ссылки на статьи. Так держать Clapping hands emoticon