항해 5주차에는 드디어 백엔드와 프론트엔드의 협업 프로젝트를 진행하였다. 처음으로 이렇게 나누어 협업을 하기 때문에 어떻게 회의를 진행해야할지 프로젝트 방향성을 잡는게 중요하다고 생각했다.
그래서 처음에는 어떤 프로젝트를 진행할지 주제를 선정하였고, 다음으로 주제에 해당하는 기능을 정했다.
기능을 정한 뒤에 백엔드와 프론트엔드가 각자 그 기능을 어떤식으로 구현을 할지 생각을 공유하였다. 그리고 난 후 api를 작성하여 프론트엔드에서 요청하는 Method방법과 request 정보를 정하고 프론트엔드에서 필요한 response데이터를 정했다. 그래서 백엔드팀은 api 설계도를 보고 코딩할 수 있게 하였다. 이렇게 api를 설계한 뒤 프론트 엔드는 와이어 프레임을 작성하였고, 백엔드는 ERD를 작정하였다. 이렇게 각자의 역할이 정해졌을때 무난하게 이번프로젝트를 마칠 수 있을 것 같았다. 하지만 프로젝트를 진행하면서 순탄하지만은 않았다.
프로젝트를 진행하면서 여러문제가 있었지만 가장 큰 문제는 서로 다른 서버를 통신하는 것이였다. 처음에는 프론트엔드에서 백엔드 서버로 요청을 하게되면 그냥 무난하게 데이터를 가져올 수 있을줄 알았다. 하지만 CORS 문제가 발생하였다.그래서 이 문제를 해결하는데에 백엔트, 프론트엔드 어디서 처리해줘야 할지 몰랐었다. 그래서 구글링을 해보니 벡엔드 서버에서 CORS 문제를 해결 할 수 있는 방법이 있어 벡엔드에서 처리를 아래와 같이 해주었다.

설정해주는 부분은 생각보다 간단했다. 설정이 완료되고 다시 통신을 해보니 성공적으로 통신이 되었다.
이렇게 프로젝트를 끝내고 좋은점과 아쉬운점이 많았다.
먼저 좋은점은 이렇게 서버와 서버간의 통신을 처음해봐서 CORS나 http, https 개념을 좀 더 같이 공부하게 된 것 같다. 그리고 프론트엔드에서 어떻게 데이터를 요청하고 처리하는지 알았기 때문에 백엔드에서는 프론트엔드가 어떻게하면 좀 더 쉽게 api를 사용할 수 있을지 생각할 수 있게 된 것 같다.
아쉬운점은 프론트엔드가 어떻게 동작하는지 파악하기 어려웠어서 새로운 기능을 추가하지 못했던 것이다. 예를 들어 소셜로그인 기능을 하고싶었는데 프론트에서는 소셜로그인을 요청할 때 기존 로그인과 똑같이 요청하는지 아니면 다르게 요청하는지 잘 몰랐어서 쉽게 기능을 구현하지 못했다. 짧은 시간동안 프론트엔드는 작업할 양이 많아서 api 요청하는 부분은 백엔드가 가이드라인을 구체적으로 제시했어야 했는데 그러지 못한 것 같아 아쉬움이 남는다.
그리고 또 하나의 아쉬운점은 백엔드서버를 수정하면 다시 배포를 해야하는데 자동 배포 기능인 git action를 사용하지 못한것이 아쉽다. git action을 사용하지 않아 코드가 수정되면 수작업으로 계속 일일이 배포를 했어야 했었다. 그래서 다음 프로젝트에는 git action을 꼭 적용해보고 싶다.
https://github.com/yalla12/market-service.git
'Weekend I Learend' 카테고리의 다른 글
| 항해 4 주차 후기 (0) | 2022.08.14 |
|---|---|
| 항해 3 주차 후기 (0) | 2022.07.31 |
| 항해 2 주차 후기 (0) | 2022.07.24 |
| 항해 1 주차 후기 (0) | 2022.07.17 |