Conversation
src/main/java/ru/scamburger/Soundger/controllers/RegisterServiceController.java
Show resolved
Hide resolved
| import ru.scamburger.Soundger.service.RegisterService; | ||
|
|
||
| @RestController | ||
| @RequestMapping("/api") |
| } else { | ||
| return new ResponseEntity<>("Username exist on server", HttpStatus.CONFLICT); | ||
| } | ||
| } |
There was a problem hiding this comment.
при удачной регистрации нужно вернуть в ответе новоиспеченного юзера (в json)
нужна будет новая dto, т.к. нельзя отдавай сущность из базы as-is (как есть), потому что там может быть секретная инфа (по типу пароля, например)
There was a problem hiding this comment.
@bubuntoid
Пока у нас нету у User'a никаких полей кроме логина и пароля и id
DTO с какими данными мне возвращать
| @@ -0,0 +1,5 @@ | |||
| package ru.scamburger.Soundger.service; | |||
|
|
|||
| public interface RegisterService { | |||
| package ru.scamburger.Soundger.service; | ||
|
|
||
| public interface RegisterService { | ||
| boolean doRegister(String username, String password); |
There was a problem hiding this comment.
возвращаемый тип должен быть User
метод предлагаю переименовать в registerUser()
| public boolean doRegister(String username, String password) { | ||
| AuthToken authToken = new AuthToken(); | ||
| authToken.setToken(UUID.randomUUID().toString()); | ||
| authToken.setExpiredAt(new Date(new Date().getTime() + tokenLifetimeInMilliseconds)); |
There was a problem hiding this comment.
токен не нужен, т.к. юзер еще не авторизировался
There was a problem hiding this comment.
он null должен быть в целом, тут по сути вообще никаких действий с этой сущностью (AuthToken) не должно быть
There was a problem hiding this comment.
Мб в данном случае сделать как везде?
Когда регаешься на сайте у тебя также происходит первоначальная авторизация
Бесит такой момент когда зарегался а потом тебе ещё надо авторизироваться
There was a problem hiding this comment.
окей, тогда не забудь в новое дто добавить соответствующее поле authToken или просто token
| user.setPassword(passwordEncryptor.encryptPassword(password)); | ||
| authToken.setUser(user); | ||
| try { | ||
| authTokenDao.saveAuthToken(authToken); |
There was a problem hiding this comment.
почему сохраняется authToken а не user?
There was a problem hiding this comment.
Верхний тред чекни
There was a problem hiding this comment.
это то понятно, но стремно выходит, что логически ты должен сохранить юзера, а вызывается метод на сохранение токена, давай сделаем userDao.saveUser, он уже в свою очередь токен за собой подтянет (точно так же как saveAuthToken подтягивает юзера)
| import java.util.UUID; | ||
|
|
||
| @Service | ||
| public class RegisterServiceImpl implements RegisterService { |
There was a problem hiding this comment.
переименовать в след за UserService
No description provided.