Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

client 리팩토링 (stateless로 변경) #499

Open
1 task
solo5star opened this issue Sep 28, 2023 · 0 comments
Open
1 task

client 리팩토링 (stateless로 변경) #499

solo5star opened this issue Sep 28, 2023 · 0 comments
Assignees
Labels
FE 될 때까지 한다잉 우선순위:🟢낮음 천천히 작업해도 됩니다. 제안🙏 이건 어때용 카테고리:리팩토링🪚 리팩토링입니다.

Comments

@solo5star
Copy link
Member

📑 작업 사항

  // FIXME: react <-> 외부 시스템(Client)와 상태 연동을 위해 양방향 바인딩을 걸었습니다.
  // 향후 단방향으로 수정해야 합니다.
  onAccessTokenRefresh(listener: (accessToken: string | null) => void) {
    this.accessTokenRefreshListener = listener;
  }

accessToken 상태는 client가 가지고 있습니다. React에서 토큰의 변경을 subscribe하여 동기화하고 있는데, React에서 토큰이라는 상태를 필요로 하는 이상 client의 토큰 상태를 제거하고 stateless하게 만들고 React 측에서 관리하는 것이 좋다고 생각합니다.

혹은 아예 client에서 전적으로 stateful하게 토큰을 관리하는 방법도 있을 것입니다. React에서 토큰을 사용하지 않는다면 이것도 좋겠으나 토큰에서 사용자 정보를 읽기 때문에 어찌되었든 React 측에서 토큰이 필요하기 때문에... client를 stateless로 하는 방향으로 갑시다.

To-do

  • client를 stateless로 변경

🎸 기타사항

stateless가 된다는 것은 즉 token을 refresh하는 동작을 수행하지 못하게 됨을 의미하기도 합니다. 왜냐면 token 상태를 가지고 있지 않고, 스스로 갱신할 수 없기 때문입니다. (이 말은 곧 토큰 상태를 관리하는 React 측에서 갱신해야 한다는 뜻이기도 합니다)

client를 stateless에 걸맞는 이름으로 바꾸는 것도 좋을 것 같습니다. 예를 들면 api?

@solo5star solo5star added FE 될 때까지 한다잉 제안🙏 이건 어때용 우선순위:🟢낮음 천천히 작업해도 됩니다. 카테고리:리팩토링🪚 리팩토링입니다. labels Sep 28, 2023
@solo5star solo5star self-assigned this Sep 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
FE 될 때까지 한다잉 우선순위:🟢낮음 천천히 작업해도 됩니다. 제안🙏 이건 어때용 카테고리:리팩토링🪚 리팩토링입니다.
Projects
Status: Todo
Development

No branches or pull requests

1 participant