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

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 พ.ย. 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 не знаю, а знакомые фронтендеры были заняты. Сожалею об этом, но сроки поджимали.

  • @intruder70
    @intruder70 ปีที่แล้ว +31

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

    • @intruder70
      @intruder70 8 หลายเดือนก่อน +11

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

    • @shadymindyt
      @shadymindyt 7 หลายเดือนก่อน

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

    • @intruder70
      @intruder70 7 หลายเดือนก่อน

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

    • @riodejaneiro8491
      @riodejaneiro8491 3 หลายเดือนก่อน

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

  • @ivanshka1759
    @ivanshka1759 ปีที่แล้ว +3

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

  • @Александр-с1ю2ц
    @Александр-с1ю2ц 11 หลายเดือนก่อน

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

  • @timursholokh8520
    @timursholokh8520 3 ปีที่แล้ว +4

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว +3

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

    • @timursholokh8520
      @timursholokh8520 3 ปีที่แล้ว +1

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว

      @@timursholokh8520 Nginx? вот видос th-cam.com/video/ixfnxLqcLOs/w-d-xo.html

  • @sergeydmitrievsky
    @sergeydmitrievsky 3 ปีที่แล้ว +8

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว +10

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

  • @vladislavpitsuha
    @vladislavpitsuha 7 หลายเดือนก่อน

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

  • @Павел-р2ь6х
    @Павел-р2ь6х 2 ปีที่แล้ว

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

  • @TrumpsOfDesign
    @TrumpsOfDesign ปีที่แล้ว

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

  • @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 на серваке. Т.е. именно я как разработчик своего апи на сервере решаю кто и с каких урлов ко мне могут прийти а не браузер по каким то своим неведомым/магическим причинам.

  • @VasilyVorontsov-d1x
    @VasilyVorontsov-d1x 2 ปีที่แล้ว +3

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

  • @sir_damnkrat
    @sir_damnkrat 2 ปีที่แล้ว

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

  • @UnknownUnknown-v8k
    @UnknownUnknown-v8k 9 หลายเดือนก่อน

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

  • @CreateLifeYT
    @CreateLifeYT ปีที่แล้ว +1

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

  • @alextektumanidze8455
    @alextektumanidze8455 5 หลายเดือนก่อน

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

  • @ci_cd4834
    @ci_cd4834 3 ปีที่แล้ว

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

  • @Serega5j
    @Serega5j 2 ปีที่แล้ว +1

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

  • @kashasa3150
    @kashasa3150 3 ปีที่แล้ว

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

  • @Dreamer_78
    @Dreamer_78 ปีที่แล้ว

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

  • @ТимурМуратов-ж7ж
    @ТимурМуратов-ж7ж 2 ปีที่แล้ว

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

  • @Rammstas1
    @Rammstas1 2 ปีที่แล้ว

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

    • @inbuckswetrust7357
      @inbuckswetrust7357 ปีที่แล้ว +1

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

  • @artemfedotov30
    @artemfedotov30 ปีที่แล้ว

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

  • @TarasovFrontDev
    @TarasovFrontDev 6 หลายเดือนก่อน +2

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

  • @RuslanTrushov
    @RuslanTrushov 3 ปีที่แล้ว

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

  • @ЕвгенийБусел-т1г
    @ЕвгенийБусел-т1г 3 ปีที่แล้ว +7

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

  • @СергейНикольский-в2о
    @СергейНикольский-в2о 2 ปีที่แล้ว

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

  • @agator10008
    @agator10008 3 ปีที่แล้ว +2

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

  • @arthurhovakimyan1146
    @arthurhovakimyan1146 3 ปีที่แล้ว +2

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

  • @ЮлияВыборнова-б4р
    @ЮлияВыборнова-б4р ปีที่แล้ว

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

  • @MrJet84
    @MrJet84 ปีที่แล้ว

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

  • @p4m3remostone71
    @p4m3remostone71 3 ปีที่แล้ว +1

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

  • @eugene782
    @eugene782 3 ปีที่แล้ว +3

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

    • @Virisound
      @Virisound 2 ปีที่แล้ว +1

      жи-ши

  • @meteysh
    @meteysh ปีที่แล้ว

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

  • @evgeniybelkovskiy4896
    @evgeniybelkovskiy4896 2 ปีที่แล้ว

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

  • @МихаилЕфимов-р7л
    @МихаилЕфимов-р7л ปีที่แล้ว

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

  • @user-artifact911
    @user-artifact911 2 ปีที่แล้ว

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

  • @denisavramenko6988
    @denisavramenko6988 3 ปีที่แล้ว

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว

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

  • @mydeviousway
    @mydeviousway 3 ปีที่แล้ว +1

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

  • @jaskier6295
    @jaskier6295 ปีที่แล้ว

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

  • @themichael8767
    @themichael8767 ปีที่แล้ว

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

  • @user-uq4ix5ie3q
    @user-uq4ix5ie3q 3 ปีที่แล้ว +1

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

  • @eb6006
    @eb6006 2 ปีที่แล้ว

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

  • @НикитаСологуб-щ3ц
    @НикитаСологуб-щ3ц 9 หลายเดือนก่อน

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

  • @polinaskvorova5369
    @polinaskvorova5369 3 ปีที่แล้ว +1

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

  • @waltermelon3206
    @waltermelon3206 3 ปีที่แล้ว

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

  • @life8261
    @life8261 ปีที่แล้ว

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

  • @kirillkalita344
    @kirillkalita344 2 ปีที่แล้ว

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

  • @dogober3861
    @dogober3861 2 ปีที่แล้ว

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

  • @Zzepish
    @Zzepish 3 ปีที่แล้ว +1

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

  • @p.v.a.8638
    @p.v.a.8638 8 หลายเดือนก่อน

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

  • @alexandrmoskalev8642
    @alexandrmoskalev8642 3 ปีที่แล้ว +2

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว +1

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

  • @Yar1sson
    @Yar1sson 2 ปีที่แล้ว

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

  • @alexandershikhov682
    @alexandershikhov682 3 ปีที่แล้ว

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว +1

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

  • @not4sure
    @not4sure 3 ปีที่แล้ว +1

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

  • @astkh4381
    @astkh4381 ปีที่แล้ว

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

  • @AbcDef-nv7qy
    @AbcDef-nv7qy 9 หลายเดือนก่อน

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

  • @МаксимВавилкин-у9ж
    @МаксимВавилкин-у9ж 2 ปีที่แล้ว

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

  • @mascai
    @mascai 2 ปีที่แล้ว

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

  • @sergo4220
    @sergo4220 3 ปีที่แล้ว

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

  • @ДмитрийЛукьяненко-ь9ы
    @ДмитрийЛукьяненко-ь9ы 10 หลายเดือนก่อน

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

  • @anatolys9203
    @anatolys9203 2 ปีที่แล้ว

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

  • @viksench6447
    @viksench6447 2 ปีที่แล้ว

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

  • @1.015
    @1.015 3 ปีที่แล้ว

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

  • @mrdzha9519
    @mrdzha9519 11 หลายเดือนก่อน

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

  • @duoduoo6732
    @duoduoo6732 ปีที่แล้ว

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

  • @1ifehappens
    @1ifehappens ปีที่แล้ว

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

  • @MrRomanvideo
    @MrRomanvideo 2 หลายเดือนก่อน

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

  • @СергейСаввин-ы2щ
    @СергейСаввин-ы2щ 3 หลายเดือนก่อน

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

  • @user-islamkaz
    @user-islamkaz 2 ปีที่แล้ว

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

  • @kind1y
    @kind1y 2 ปีที่แล้ว

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

  • @tema_skakun
    @tema_skakun ปีที่แล้ว

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

  • @MrSirus83
    @MrSirus83 3 ปีที่แล้ว

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

  • @katerinak5997
    @katerinak5997 ปีที่แล้ว

    Spasibo aktualno

  • @AndrewLapteff
    @AndrewLapteff ปีที่แล้ว

    лучший

  • @polark1677
    @polark1677 3 ปีที่แล้ว +4

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว

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

    • @polark1677
      @polark1677 3 ปีที่แล้ว

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว

      Ну да.

  • @expoliemexpoliem6246
    @expoliemexpoliem6246 7 หลายเดือนก่อน

    спасибо!

  • @eney1975
    @eney1975 3 ปีที่แล้ว +1

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

  • @lanfix1320
    @lanfix1320 3 ปีที่แล้ว +1

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

  • @Storytelless
    @Storytelless 3 ปีที่แล้ว

    Спасибо!

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว

      Пожалуйста

  • @naximchik
    @naximchik 3 ปีที่แล้ว +1

    Спасибо

  • @The1nv1s1bleMan
    @The1nv1s1bleMan ปีที่แล้ว

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

  • @Memver777
    @Memver777 ปีที่แล้ว

    Класс

  • @ovel87
    @ovel87 2 ปีที่แล้ว

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

    • @pavlenkoat
      @pavlenkoat  2 ปีที่แล้ว

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

  • @hulumulu1108
    @hulumulu1108 2 ปีที่แล้ว

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

  • @gunfudragon
    @gunfudragon 3 ปีที่แล้ว +3

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

    • @NurCamedy
      @NurCamedy 3 ปีที่แล้ว

      Я на фронте

  • @ВатквизДеСад
    @ВатквизДеСад 3 ปีที่แล้ว

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

  • @Aleksei_Filatov
    @Aleksei_Filatov 3 ปีที่แล้ว +7

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

    • @404Negative
      @404Negative 10 หลายเดือนก่อน

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

  • @olesya7232
    @olesya7232 2 ปีที่แล้ว

    Cool, thanks

  • @ProWebCoder2002
    @ProWebCoder2002 2 ปีที่แล้ว

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

  • @Alex123Ax-r3f
    @Alex123Ax-r3f 3 ปีที่แล้ว

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

  • @Leon-rv2zm
    @Leon-rv2zm 2 ปีที่แล้ว

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

  • @viktoryakovenko757
    @viktoryakovenko757 3 ปีที่แล้ว

    а XSS подвезут?

  • @asanzhakizhanov3261
    @asanzhakizhanov3261 2 ปีที่แล้ว

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

  • @ДмитроНаговський
    @ДмитроНаговський 2 ปีที่แล้ว

    блин классно

  • @liko8019
    @liko8019 2 ปีที่แล้ว

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

  • @ioncreciun6110
    @ioncreciun6110 ปีที่แล้ว

    Пасиб

  • @alimzhanshabarov4204
    @alimzhanshabarov4204 3 ปีที่แล้ว +1

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว

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

    • @pavlenkoat
      @pavlenkoat  3 ปีที่แล้ว

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

  • @ДенисАхметов-т4д
    @ДенисАхметов-т4д ปีที่แล้ว

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

  • @ihorkovryhin1767
    @ihorkovryhin1767 ปีที่แล้ว +1

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

  • @bogdanroman5100
    @bogdanroman5100 2 ปีที่แล้ว

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