rank에 대한 api 설계

0

이번엔 store와 course에 대한 이번주 top5들을 가져오는 api를 설계 하였다. 로직은 문제가 없었고, 이번에도 api naming에서 발이 묶였다.

먼저 store들과 course들을 한 api에서 호출하는 것은 ui에 묶이는 api설계일 것이라 생각했다.

또한 store는 자신의 지역을 기반으로 근처의 가게들에 대해 가져오기 때문에 location까지 추가해 주어야 했다.

/stores/location/:location/top
따라서 store table 안의 location안의 top5 가게들을 가져오게 이렇게 store controller에 설계하였다.

/courses/top
마찬가지로 course도 이렇게 설계하였다.

하지만 top이란 field는 stores와 courses table안에 없다. 쿼리를 날려 각각 stores와 courses중 등수를 매겨 가져오는 방식이다.

table의 field에 없다

/rank/stores/location/:location
/rank/courses/top
따라서 이렇게 ranking에 드는 stores->location.. 이렇게 flow가 흘러가게 api를 바꾸어 주었다. 하지만 rank가 가장 먼저오는 api설계는 store과 course controller에 각각 맞지 않다

rank controller의 분리

따라서 rank controller를 생성하여 따로 분리해주었다.

profile
https://www.youtube.com/watch?v=__9qLP846JE

0개의 댓글