osamhack2022 / WEB_SharedDiary_Nuri

아카이브를 강화한 SNS형태의 공유형 일기장
MIT License
0 stars 2 forks source link

Profile 로직 수정 필요 #33

Closed Aiden-Kwak closed 1 year ago

Aiden-Kwak commented 1 year ago

(곽병혁) 현재 /profile/detail 로 axios요청을 하면 서버는 token을 받아 id를 분리하고 해당 id로 user를 filtering 하여 해당 user의 profile을 전송한다. 즉 로그인한 유저의 프로필을 전송한다. 이러면 재사용에 문제가 발생한다. 다른 유저의 프로필도 같은 로직으로 만들고 싶다.

개선안 클라이언트에서 user라는 이름으로 제공되는 email을 서버로 함께 전송하여 이걸로 필터링을 진행한다. 그러면 해당 로직을 재사용할 수 있다.

Aiden-Kwak commented 1 year ago

할일 기록 1020

  1. 현재 myspace의 url은 /myspace 다. 이것을 /myspace/:username 으로 만들자.
  2. diaryCard에 Link 씌우고 /myspace/:username 을 연결하자. / 개발편의상 :nickname이 좋을지도 모르겠다.
  3. Link를 클릭하면 해당 유저의 myspace로 넘어갈 것이다.
  4. url로 만들 username, nickname 정보는 ProfileCard로 넘어온 props에서 얻을 수 있다.
  5. Profile 컴포넌트를 구성할 유저데이터는 현재 /accounts/profile/detail/${profileUsername} 를 통해 서버에서 가져오고 있다. 이때 profileUsername은 로컬스토리지에 넣은 유저네임으로 가져오고 있다.
  6. 5의 로직을 재사용가능한 로직으로 만들기 위해서는 어떻게 해야할까?
Aiden-Kwak commented 1 year ago

서버의 프로필직렬화 로직에서 username을 context로 보낼 방법을 찾으면 해결될 것. 클릭시 전달받은 username에 따라 페이지를 이동하면 될것이기때문. 나의공간을 클릭하면 로컬스토리지에 저장된 내 정보를 보내면 되고, 유저프로필을 클릭하면 해당 프로필을 만들때 이용된 데이터로 정보를 보내면 된다.

Aiden-Kwak commented 1 year ago

user_id 쓰면 된다

Aiden-Kwak commented 1 year ago

/accounts/profile/detail/${profileUsername} 또한 ${id} 로 변경한다. 현재 서버에서는 slug로 url을 처리하지만 pk로 처리하는게 지금 구상에선 더 깔끔하다.

Aiden-Kwak commented 1 year ago

axios get을 요청할때 param_id을 보낼 생각을 하면안된다. 요청시에 id 를 받아오니까. 내 프로필에 접근할때와 상대 프로필에 접근할때 id 출처가 달라져야할듯. 로그인시에 id받아오고, 다른 유저때는 그냥 받아온 id 쓰면 된다.

Aiden-Kwak commented 1 year ago

완료, 클라이언트 url :pk만 해결필요