ZeBrains Broadcast

ZeBrains Broadcast

Мы создаём и реализуем IT-стратегии для современного бизнеса, помогаем нашим клиентам развиваться и укреплять свои позиции на рынке. Экспертиза компании позволяет разрабатывать высокотехнологичные, надежные продукты, которые растут вместе с бизнесом клиента.

API адаптеры

API адаптеры

Пікірлер

  • @annj3150
    @annj315016 күн бұрын

    Отличный материал

  • @user-td1lt1ye1d
    @user-td1lt1ye1d22 күн бұрын

    Пролистала много видео, только с этим стало пошагово понятно как работать. Спасибо! Подача Софьи очень нравится, хочется больше обучающего контента этого спикера

  • @kiselkisel3463
    @kiselkisel346326 күн бұрын

    Первое правило микросервисов, не писать их на php

  • @user-kx7sk4kj9f
    @user-kx7sk4kj9f22 күн бұрын

    Почему?

  • @Nfix106
    @Nfix106Ай бұрын

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

  • @user-qv1fc9wl4i
    @user-qv1fc9wl4i2 ай бұрын

    Огромное вам спасибо! Смотрю уже второй урок, аналогов такого качественного объяснения, как работать со сваггером, я не нашла. Предвкушаю уже 3 часть))

  • @user-vk4tw3ym1z
    @user-vk4tw3ym1z2 ай бұрын

    Господи, наконец понятное и пошаговое видео. Автор, спасибо вам большое, очень помогли!

  • @user-si4hv5rf7s
    @user-si4hv5rf7s3 ай бұрын

    Спасибо

  • @Tanatopraktik
    @Tanatopraktik4 ай бұрын

    Спасибо

  • @user-hb5vd3ey9d
    @user-hb5vd3ey9d4 ай бұрын

    Отличное видео! Наконец-то до меня дошло что такое cors👍

  • @unicoxr5tj417
    @unicoxr5tj4174 ай бұрын

    девушка красивая)

  • @RuslanMavlyanov
    @RuslanMavlyanov5 ай бұрын

    Жуть какой звук адский

  • @irinaigina4767
    @irinaigina47675 ай бұрын

    Софья, большое спасибо за такую лекцию!

  • @vagifk2864
    @vagifk28645 ай бұрын

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

  • @alanpuch2243
    @alanpuch22435 ай бұрын

    Благодарю, в тумане начинает вырисовываться понимание запроса на сервер. 👦👍

  • @P_B_N_D
    @P_B_N_D5 ай бұрын

    Спасибо за урок! Из пожеланий: было бы здорово видеть ваш курсор, когда вы комментируете слайды со схемами и особенно, когда комментируете код в свагере. Так проще ориентироваться будет тем, кто с этим только начинает разбираться.

  • @P_B_N_D
    @P_B_N_D5 ай бұрын

    Супер!😀 Благодаря вашим урокам у меня больше не дергается глаз, в попытках изучить свагер и yaml формат. Всё поэтапно и подробно рассказываете👍 Спасибо, Софья!

  • @P_B_N_D
    @P_B_N_D5 ай бұрын

    Софья! Вы лучшая! Спасибо за урок! Мне как раз то, что нужно🤓

  • @kana_wi
    @kana_wi6 ай бұрын

    Спасибо большое, очень полезно было

  • @PanicWassano
    @PanicWassano6 ай бұрын

    на самом деле преимущества высосаны из пальца, можно просто сказать, что swagger для вас привычнее. Использовал и Blueprint и Swagger, разница лишь в описании Yaml vs Markdown. Что касается клиентских библиотек, то код в любом случае пишется под клиенты внутри проекта, а не берется сгенерированный.

  • @saber1in
    @saber1in7 ай бұрын

    Лучшее объяснение

  • @mikewazowski7526
    @mikewazowski75267 ай бұрын

    В начале чувак плохо объясняет. Даже немного будучи в курсе темы все равно трудно понять из-за обилия избыточных абстрактных терминов: «у вас есть некий закрытый ресурс». Дайте пример. Скажите, что например я из своего приложения хочу сделать запрос в интернет-банкинг пользователя. Дайте больше жизни в свои пояснения. Потом все достаточно подробно, спасибо!

  • @user-fw2pp5zg2q
    @user-fw2pp5zg2q7 ай бұрын

    Кто нажал дизлайк? Очень странные люди Материал очень годный. Все хорошо разложил, все понятно

  • @KanstantsinSudzilouski
    @KanstantsinSudzilouski8 ай бұрын

    10:30 у https порт будет 443 а не 80

  • @me29_hi8
    @me29_hi88 ай бұрын

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

  • @AntiGusar
    @AntiGusar8 ай бұрын

    Интересно что про переиспользование тут сказано совсем чуть-чуть. Большая часть видеоурока посвящена именно безопасности. А у меня как раз именно со ссылками проблемы 😅

  • @luckytima2315
    @luckytima23158 ай бұрын

    что-то не понятное

  • @AlexandrSpirit
    @AlexandrSpirit9 ай бұрын

    Непонятно. Если из запроса для одного компонента нужны и name, для другого айди и лейбл. Делать два адаптера и два отдельных запроса?

  • @seoonlyRU
    @seoonlyRU9 ай бұрын

    как всегда мощно и лайк от СЕООНЛИ

  • @fightspace9822
    @fightspace98229 ай бұрын

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

  • @ZeBrains
    @ZeBrains9 ай бұрын

    Здравствуйте! Необходимо провести настройки на Вашем сервере для разрешения кросс-доменных запросов.

  • @solvex8304
    @solvex83049 ай бұрын

    Познавательно, спасибо! Ждём следующие видео про внедрение Event Driven и ElasticSearch.

  • @someChicoRy
    @someChicoRy10 ай бұрын

    Круто. Всё по теме и без воды( наверное)))))

  • @user-ot6gh4ym2i
    @user-ot6gh4ym2i10 ай бұрын

    React router Dom . Хороший контент.

  • @Drcn011
    @Drcn01110 ай бұрын

    Я хз, как люди пишут, что им очень понравилось объяснение) Я практически вообще ничего не понял, и это при том, что уже как-то раз писал на бэке UseCors() с разрешающими политиками, чтобы подружить разные источники...

  • @ZeBrains
    @ZeBrains10 ай бұрын

    Нам очень жаль, что доклад не помог Вам лучше разобраться с CORS. Из контекста комментария не совсем понятно, что именно понять не получилось. На некоторые из вопросов мы также ответили в комментариях к этому видео. Возможно, ответы к этим комментариям помогут Вам понять то, что не удалось понять из видео.

  • @samolevich
    @samolevich10 ай бұрын

    Всё ещё ничего не понял

  • @ZeBrains
    @ZeBrains10 ай бұрын

    Что конкретно не удалось понять? Попробуем объяснить 😊

  • @samolevich
    @samolevich10 ай бұрын

    @@ZeBrains Мне не хватило примеров Я бы хотел пошагово от простого к менее простому. Если добавить такую строчку, то поведение будет таким, если убрать эту - то будет вот так. Концепция соединения данных осталась непонятной. Что за выборка. Для чего нужен enter(). Что делает join(). Видео с CORS как-то всё очень наглядно и последовательно. При этом удалось объяснить простыми словами. Спасибо за то, что вы делаете, что тратите время и силы на вот это вот всё

  • @ZeBrains
    @ZeBrains10 ай бұрын

    Спасибо за Ваш комментарий! D3.js не является простым инструментом. Целью данного видео было базовое знакомство с ним. Добавить примеры в уже опубликованном видео мы, к сожалению, не сможем. Возможно, в будущем мы сделаем новое видео с более подробным разбором функционала D3.js. А пока предлагаем Вам ознакомиться с официальной документацией d3js.org/what-is-d3 и статьей на Хабре habr.com/ru/articles/342106/. Надеемся, эти ссылки помогут Вам узнать что-то новое и закрыть те моменты, которых не хватило в нашем видео.

  • @samolevich
    @samolevich10 ай бұрын

    @@ZeBrains спасибо

  • @samolevich
    @samolevich10 ай бұрын

    Самое лучшее что я видел на эту тему Просто подробнейшее и исчерпывающее объяснение Спасибо огромное

  • @user-fr5tt6cu4q
    @user-fr5tt6cu4q11 ай бұрын

    Это сугубо браузерная хрень. На бэке такого не возникает

  • @ZeBrains
    @ZeBrains11 ай бұрын

    Все верно 👍

  • @prod.wembley3816
    @prod.wembley381611 ай бұрын

    Потрясающее разьяснение!

  • @ArteEtMarte
    @ArteEtMarte11 ай бұрын

    Никак не пойму по поводу CORS... каким образом сторонний сайт "от вашего имени" может отправить что то, если у него нет данных для аутентификации? Исходя из того, что у вас доступ есть, а у стороннего сайта нет, то механизм аутентификации точно есть... А если у злоумышленника есть данные для аутентификации, то что мешает ему подделать все прочие данные вообще не используя вас и браузеры в этой схеме? CORS выглядит как штука, которая почти не добавляет безопасности(если вообще добавляет), зато создает кучу проблем, особенно, людям, сталкивающимся с этим впервые...

  • @ZeBrains
    @ZeBrains11 ай бұрын

    CORS- зона ответственности исключительно браузера. Именно через браузер рядовой пользователь взаимодействует с веб-приложением и именно в браузере пользователь может столкнуться с различными атаками, направленными на его конфиденциальные данные. Дополнительно можно почитать csplite.com/ru/csp291/ и csplite.com/ru/csp150/

  • @user-kn8nl4lv5y
    @user-kn8nl4lv5y11 ай бұрын

    @@ZeBrains вот этого в видео и не хватает. А то кажется, что сам сервер непосредственно блочит запрос.

  • @ZeBrains
    @ZeBrains10 ай бұрын

    Спасибо за замечание. Хоть в конце видео и говорится о том, что это делает браузер, все же стоило об этом сказать более подробно и в начале. Постараемся учесть такие нюансы в наших будущих видео 😊

  • @VovanEkb
    @VovanEkb11 ай бұрын

    Ну можно же было Origin говорить а не источники, ну такая путаница потом в голове, как отступы блин в css которые не отступы нифига

  • @ZeBrains
    @ZeBrains11 ай бұрын

    В переводе origin и есть источник. Даже CORS (Cross-Origin Resource Sharing) будет звучать как "совместное использование ресурсов разных источников". На ресурсах амазона (aws.amazon.com/ru/what-is/cross-origin-resource-sharing/) и яндекса (cloud.yandex.ru/docs/glossary/cors) придерживаются такого же перевода и называют origin источником.

  • @freenorthcaucasus
    @freenorthcaucasus11 ай бұрын

    К примеру у меня есть сайт и приложение как мне запретить пользоваться апишкой все ресурсы кроме моего сайта и приложения?

  • @ZeBrains
    @ZeBrains11 ай бұрын

    Хороший вопрос, хоть и не относится к CORS. Совсем простого способа "закрыть" API полностью для всех, кроме Вашего сайта и приложения, нет. В любом случае придется делать обработку запроса. Подходы к защите могут сильно отличаться в зависимости от требований конкретного проекта. Где-то может хватить ограничения доступа только авторизованным пользователям, например, с помощью JWT. Где-то могут использоваться какие-то другие токены, подписи. Где-то в теле запроса могут передаваться различные объекты с наборами генерируемых данных, благодаря которым можно быть практически уверенными, откуда пришел запрос. На самом деле это тема для огромной дискуссии. В каждом конкретном случае подход может быть разным.

  • @user-hb5vd3ey9d
    @user-hb5vd3ey9d4 ай бұрын

    я у себя на сайте сделал white list. Только с разрешённых ip можно обратится к бэку

  • @user-ci8yo4yr7s
    @user-ci8yo4yr7s Жыл бұрын

    Столкнулся с ошибкой CORS, и никак не могу понять. Да, действительно, при отправке запроса из браузера, получаю ошибку, но если обращаюсь по той же ссылке из python скрипта, ошибок нет, получаю полноценный ответ. Так в чем защита тогда?

  • @ZeBrains
    @ZeBrains Жыл бұрын

    Ошибка CORS (Cross-Origin Resource Sharing) возникает тогда, когда веб-страница, загруженная из одного домена, пытается отправить запрос на другой домен. Таким образом, ошибка CORS возникает из-за политики безопасности браузера, которая предотвращает выполнение запросов на другие домены. В Вашем случае использование Python позволяет обходить эту политику и выполнять запросы без ошибок, тк запросы отправляются не напрямую из браузера.

  • @couragic
    @couragic7 ай бұрын

    жаль этот момент не затронули в видео. Можно закрепить этот коммент.

  • @Vovan00275
    @Vovan00275 Жыл бұрын

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

  • @user-rl8fy6xe1t
    @user-rl8fy6xe1t Жыл бұрын

    А должен ли сам сервер, перед тем как отдавать ответ, сверяться со своей CORS конфигурацией, и в случае чего возвращать пустой ответ со статусом 403?

  • @ZeBrains
    @ZeBrains Жыл бұрын

    Да, сервер должен сверяться со своей CORS конфигурацией перед тем, как отдавать ответ. Если запрашиваемый источник не входит в список доверенных источников, сервер может вернуть пустой ответ со статусом 403, но может и не возвращать. Вообще 403 статус имеет отношение к запрещению доступа к ресурсу. Поэтому на 403 статус будет влиять скорее не CORS, а другие факторы.

  • @InverserPro
    @InverserPro Жыл бұрын

    Благодарю, бро!

  • @maximzhuravlenko4932
    @maximzhuravlenko49322 жыл бұрын

    Подскажите пожалуйста как быть если access токен храниться в памяти, а пользователь может открыть несколько вкладок в браузере. А что бы получить новый access токен нужно отправить рефреш токен, который потом станет не валидным. И получается что для первой вкладки уже не валидны оба токена. Как быть в такой ситуации ?

  • @maximzhuravlenko4932
    @maximzhuravlenko49322 жыл бұрын

    Отличное видео) Спасибо)

  • @thewebpractitioner7498
    @thewebpractitioner74982 жыл бұрын

    Klass! Sposibo bro!

  • @denispetrov2875
    @denispetrov28752 жыл бұрын

    Привет.Ты действительно соображаешь в этом?Или просто по бумажке читаешь?

  • @ZeBrains
    @ZeBrains2 жыл бұрын

    Действительно соображает в этом.

  • @user-js1lj3rm1d
    @user-js1lj3rm1d2 жыл бұрын

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

  • @farkhodakhmedov7443
    @farkhodakhmedov74432 жыл бұрын

    Скажите пжлст, обязательно ли через все пайпы прогонять один и тот же объект ? Можно ли передать 2му пайпу совершенно другой объект из 1го? И можно ли и как использовать транзакции бд ?

  • @ivangarbuz2155
    @ivangarbuz21552 жыл бұрын

    1) Транзакции в БД это другая тема 2) Если использовать mixed то это решит Вашу задачу

  • @ZeBrains
    @ZeBrains3 жыл бұрын

    00:32 Предпосылки возникновения OAuth. 01:20 Что такое OAuth2? 02:20 Как работает OAuth? 09:02 Какие виды авторизации есть? 17:54 Какие виды авторизации поддерживают соц. сети? 18:46 Техническое окружение проекта и требование к нему. 20:10 Наш вариант выбора батареек. 42:44 Какие плюсы получил проект в нашей реализации? 43:17 Какие минусы у проекта в нашей реализации? 44:20 Полезные ссылки. 45:16 Вопросы.