Size: a a a

NestJS — русскоязычное сообщество

2021 January 29

A

Ali in NestJS — русскоязычное сообщество
Vanya Leyn
а зачем возвращать юзера?
ты в джвт можешь запихнуть пейлоад необходимый и на фронте с ним работать
Да у меня знакомый бек.. вечно говорит что это "херово" нагружать токен..

Типо там достаточно лишь рефре и аксес и userID к примеру
источник

A

Ali in NestJS — русскоязычное сообщество
ибо вдруг у меня, в модели пользователя, будет 15ть полей.. не возвращать же их в токене?
источник

VL

Vanya Leyn in NestJS — русскоязычное сообщество
Ali
Да у меня знакомый бек.. вечно говорит что это "херово" нагружать токен..

Типо там достаточно лишь рефре и аксес и userID к примеру
запихнуть туда юзернейм/фамилию - норм
источник

VL

Vanya Leyn in NestJS — русскоязычное сообщество
я на регу отдаю токен, в котором логин/ник и усё, за доп штуками - другой запрос пусть делают
источник

A

Ali in NestJS — русскоязычное сообщество
Понял, спасибо
источник

VL

Vanya Leyn in NestJS — русскоязычное сообщество
Ali
Понял, спасибо
могу быть неправ, надеюсь опытные ребята поправят
источник

A

Ali in NestJS — русскоязычное сообщество
Будем ждать совета от @dimuska139 , вроде как он опытный
источник

🏡K

🏡 ILshat Khamitov in NestJS — русскоязычное сообщество
Роль и ид юзера, все остальное вне жвт, после входа возвращаю токен только
источник

🏡K

🏡 ILshat Khamitov in NestJS — русскоязычное сообщество
Рега это другой модуль - аккаунт, он запускает у модуля авторизации создание нового юзера и получает токен с ид и ролью, этот ид использует как ид юзера у себя в табличке в модуле аккаунт, при отображении списка юзеров с ролями, передаёт список ид юзеров в модуль авторизации и тот возвращает список ид с ролями, птом джойнит и отдаёт на фронт как один список
источник

🏡K

🏡 ILshat Khamitov in NestJS — русскоязычное сообщество
Как то так
источник

🏡K

🏡 ILshat Khamitov in NestJS — русскоязычное сообщество
Модуль авторизации и аккаунт можно разнести по разным микросервисам
источник

🏡K

🏡 ILshat Khamitov in NestJS — русскоязычное сообщество
И с разными базами
источник

A

Ali in NestJS — русскоязычное сообщество
🏡 ILshat Khamitov
Рега это другой модуль - аккаунт, он запускает у модуля авторизации создание нового юзера и получает токен с ид и ролью, этот ид использует как ид юзера у себя в табличке в модуле аккаунт, при отображении списка юзеров с ролями, передаёт список ид юзеров в модуль авторизации и тот возвращает список ид с ролями, птом джойнит и отдаёт на фронт как один список
Понял, спасибо большое.

Я разнес их на 2 модуля, авторизация и пользователи.
источник

D

Dmitriy in NestJS — русскоязычное сообщество
Ali
А вообще может подскажешь логику с этой регистрацией - авторизацией.

Получается я сделал так:
Человек вводить данные, они проходит валидацию, закидываются в базу, возвращаются созданный пользователь.

Но мне еще нужно получить для него jwt tokens, я могу вернуть что типо 2 объекта
{
user,
tokens
} ?

Или лучше когда я буду регистрироваться, то вначале идет рега, возвращаются юзер, после на фронте посылается еще 1 запрос, на авторизацию, от куда прийдут токены ?
Я делаю так, что эндпоинт регистрации в ответ возвращает либо ошибку валидации, либо пару токенов. В payload аксесс-токена запихни id юзера. Отдельный запрос на получение токенов не надо. Точнее надо, но для рефреша (туда передаешь рефреш-токен, а получаешь новую пару)
источник

A

Ali in NestJS — русскоязычное сообщество
Dmitriy
Я делаю так, что эндпоинт регистрации в ответ возвращает либо ошибку валидации, либо пару токенов. В payload аксесс-токена запихни id юзера. Отдельный запрос на получение токенов не надо. Точнее надо, но для рефреша (туда передаешь рефреш-токен, а получаешь новую пару)
Ну значит у всех все сходится примерно по этой логике, понял
источник

LM

Lucifer Morningstar in NestJS — русскоязычное сообщество
Товарищи, если используются субдомены, то авторизацию только кукой?
источник

🏡K

🏡 ILshat Khamitov in NestJS — русскоязычное сообщество
Lucifer Morningstar
Товарищи, если используются субдомены, то авторизацию только кукой?
Не делал с сабами и куками, токое тока через хедар делал
источник

SS

Sergey Shumchenko in NestJS — русскоязычное сообщество
Dmitriy
Единственный кейс, где может, на мой взгляд, пригодиться OneToMany, это если тебе нужно на странице вывести список авторов и сразу же списки их статей в единой таблице. Но проблема тут в том, что ORM через OneToMany это оптимальным образом всё равно не сумеет вытащить. В идеальном случае это делается через 2 запроса к бд (первый с пагинацией, а второй с IN), но ORM так не сделает
const result = await this.authorRepository.createQueryBuilder('author').innerJoinAndSelect("author.posts", "post").where("user.id = :id", {id)).getMany()

А чем плохо данное решение? Можно еще прикрепить пагинацию при необходимости
источник

D

Dmitriy in NestJS — русскоязычное сообщество
Lucifer Morningstar
Товарищи, если используются субдомены, то авторизацию только кукой?
Куку так и так придётся юзать для хранения refresh-токена)
источник

LM

Lucifer Morningstar in NestJS — русскоязычное сообщество
Dmitriy
Куку так и так придётся юзать для хранения refresh-токена)
Тоже верно
источник