169 похожих чатов

В реакте так и принято сохранять авторизован пользователь или нет

в булевую переменную и от этого решать может человек доступ к роуту получить или нет?

39 ответов

25 просмотров

Не безопасно. Доступ к приватным роутам можно получить, если захотеть. Но данные хотя бы защищены будут. Тоже ща исследую эту тему. Пока что остановился на динамичемких импортах и лейзи компонентах. Несколько отдельных js. К некоторым доступ только по http only cookie, в котором токен

Не обязательно. Можно просто в интерсепторах перехватывать все ответы от сервера, проверять 401 код, и если пользователь будет не авторизован, то редиректить его на форму логина. А в каждом компоненте делать проверку в юзЭффекте на наличие токена, если его нет, то опять же редиректить на форму логина.

Ruslan G.
Не безопасно. Доступ к приватным роутам можно полу...

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

Dmitriy- Автор вопроса
Egor Платонов
Не обязательно. Можно просто в интерсепторах перех...

Не могли бы скинуть статью какую чтобы про это почитать ?

Никита Кусь
можешь скинуть какую нить статью по поводу lazy за...

нигде не нашел. пока что только в голове. пока планирую лейзи роуты сделать https://reactjs.org/docs/code-splitting.html#route-based-code-splitting как только пользователь перейдет на них, то по идее он запросит protected js файлы. если у пользователя была кука, то он сможет загрузить их (https://stackoverflow.com/a/26450582). если у пользователя не будет куки, то в реакте какой-нибудь ErrorBoundary сработать должен

Dmitriy- Автор вопроса
Ruslan G.
Не безопасно. Доступ к приватным роутам можно полу...

Как мне сказали сервер все равн данные не дает, смысл интерфес защищать.

Dmitriy
Как мне сказали сервер все равн данные не дает, см...

у меня у лида шиза. он не хочет отдавать этот код админский

Dmitriy- Автор вопроса
Dmitriy
Не могли бы скинуть статью какую чтобы про это поч...

Загугли , axios interceptors , много статей с примерами есть. Да и в самой доке тоже.

Dmitriy- Автор вопроса

Вот с ним мало работал. Спасибо. Гляну.

В любой библиотеке для работы с http , как правило есть тоже свои интерсепторы.

Dmitriy
Вот с ним мало работал. Спасибо. Гляну.

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

Dmitriy
В fetch они есть ?

Нет, но это и не библиотека

Илюша 🎂
бизнес логика в интерцепторах 😊😊😊

В чем тут бизнес логика? Логика по обновлению токена ?

Илюша 🎂
бизнес логика в интерцепторах 😊😊😊

предлагаешь абсолютно каждый запрос в компонентах проверять?

Dmitry Ylnui
редирект на форму логина

Ну хорошо, редирект тогда из компонента можно делать. В промисе проверять код ответа, если он 401, то редирект куда тебе нужно. А в самом интерсепторе только логика связанная с токенами и их обновлением.

Никита Кусь
хук проще юзать кастомный. какой нить useRequest

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

Dmitriy- Автор вопроса
Dmitry Ylnui
Нет, но это и не библиотека

понял, я поэтому и не знал про перехватчики.

Илюша 🎂
предлагаю не использовать аксиос

А вообще да, лучше конечно самописные каракули, особенно для не опытных людей😊

Egor Платонов
А вообще да, лучше конечно самописные каракули, ос...

ну так пусть неопытные опыта набираются а не на либы полагаются

Dmitriy- Автор вопроса
Илюша 🎂
предлагаю не использовать аксиос

Я тоже согласен с этим, у меня на работе после какой то уязвимости перестали использовать. Потом я его не видел больше.

Egor Платонов
А вообще да, лучше конечно самописные каракули, ос...

да забей, всегда найдётся тот кто критикует но ниче не предлагает

fetch, вопросы?

Илюша 🎂
fetch, вопросы?

Где гарантии, что твоя рукопись будет менее уязвима и в целом лучше работать, чем реализация этого в библиотеке? Ты даш такую гарантию на 100 процентов? Или это только догадки , что у тебя будет лучше? Не думаю что из всех тут сидящих есть много тех, кто сделает лучше чем уже есть, я не говорю про тех у кого опыт 5 лет конечно. Но они как правило такими вопросами и не задаются.

Egor Платонов
Где гарантии, что твоя рукопись будет менее уязвим...

ты так пишешь, будто либы тебе что-то гарантируют)

Илюша 🎂
ты так пишешь, будто либы тебе что-то гарантируют)

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

Dmitriy
фетч не рукопись же 🤷‍♂️

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

Dmitriy- Автор вопроса
Dmitriy
Да я как понял они и не нужны.

Да, и на чем такой вывод основан?) Или ты ручками хочешь после каждого запроса на сервер делать нужные проверки или заголовки менять?)

Dmitriy- Автор вопроса
Egor Платонов
Да, и на чем такой вывод основан?) Или ты ручками ...

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

Dmitriy
кейсыприведите, я просто не понимаю зачем мне на х...

Авторизация, работа с токенами. Банально.

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта