Size: a a a

Node.js — русскоговорящее сообщество

2020 December 22

A

Alexander in Node.js — русскоговорящее сообщество
Правда проверка странная какая-то, зачем проверять что id юзера не равняется переданому id?
источник

PW

Pan Włodzimierz in Node.js — русскоговорящее сообщество
ну так юзер может себя редактировать, а других нет
источник

A

Alexander in Node.js — русскоговорящее сообщество
Pan Włodzimierz
ну так юзер может себя редактировать, а других нет
Бессмысленная проверка, можно же просто брать req.user.id и обновлять по этому айдишнику, таким образом какой юзер бы не передал запрос он будет обновлять инфу только о самом себе
источник

PW

Pan Włodzimierz in Node.js — русскоговорящее сообщество
ага внатуре
источник

PW

Pan Włodzimierz in Node.js — русскоговорящее сообщество
я просто изначально делал тот роут и для юзера и для админа
а админ всех может редактировать
поэтому и проверку эту добавлял
источник

VL

Vova Levchenko in Node.js — русскоговорящее сообщество
Alexander
Вынести в middleware
не лучший способ
источник

VL

Vova Levchenko in Node.js — русскоговорящее сообщество
лучше это делать в моделе или сервисе. мидлвары создают много проблем. у нас ведь один поток в ноде а мидлвары для всех юзеров
источник

PW

Pan Włodzimierz in Node.js — русскоговорящее сообщество
так а сервисы нет?
источник

PW

Pan Włodzimierz in Node.js — русскоговорящее сообщество
тоже для залогиненых
источник

VL

Vova Levchenko in Node.js — русскоговорящее сообщество
Pan Włodzimierz
так а сервисы нет?
у тебя может появиться цепочка мидлвар и в каждой из них ты будешь как то мутировать обьект req. и однажды ты не сможешь контролировать правильность мутаций
источник

PW

Pan Włodzimierz in Node.js — русскоговорящее сообщество
возможно
но в сервисе у меня бизнес логика, а эта проверка на текущего не является таковой
источник

VL

Vova Levchenko in Node.js — русскоговорящее сообщество
Pan Włodzimierz
возможно
но в сервисе у меня бизнес логика, а эта проверка на текущего не является таковой
что ты подразумеваешь под бизнес логикой?
источник

A

Alexander in Node.js — русскоговорящее сообщество
Vova Levchenko
у тебя может появиться цепочка мидлвар и в каждой из них ты будешь как то мутировать обьект req. и однажды ты не сможешь контролировать правильность мутаций
Эта middleware не мутирует req, она выносит логику в один модуль, в данном случае middleware, и выдает ошибку если условия не соблюдены
источник

PW

Pan Włodzimierz in Node.js — русскоговорящее сообщество
ну типа работа и с моделями и тд
а эта проверка на текущего пользователя это скорее проверка доступа какая-то
источник

VL

Vova Levchenko in Node.js — русскоговорящее сообщество
Alexander
Эта middleware не мутирует req, она выносит логику в один модуль, в данном случае middleware, и выдает ошибку если условия не соблюдены
эта не мутирует, а еще какие то будут
источник

A

Alexander in Node.js — русскоговорящее сообщество
Vova Levchenko
эта не мутирует, а еще какие то будут
Мне кажется писать обращение к методу сервиса в каждой роуте это не лучшая затея
источник

A

Alexander in Node.js — русскоговорящее сообщество
а middleware одну написать и вставить куда надо - то что нужно
источник

VL

Vova Levchenko in Node.js — русскоговорящее сообщество
в моем понимание это надо делать в сервисе
источник

PW

Pan Włodzimierz in Node.js — русскоговорящее сообщество
ну у меня сервис вообще не работает с риквестом, никак с ним не связан
источник

VL

Vova Levchenko in Node.js — русскоговорящее сообщество
завязываться на миддлвары плохая идея. ты привязываешься к их порядку выполнения. race condition никто не отменял
источник