React + Node.js(express) API 대기중 오류

1. 개발 상황

React + Node.js 환경에서 express로 서버를 열고 해당 서버로 delete, post를 이용해 위시리스트(찜) 기능을 구현하고 있는 상황이었다.

빈 하트 아이콘을 누르면 post, 하트 내부가 꽉 채워지고

채워진 하트 아이콘을 누르면 delete, 하트 내부가 비워지는

기능을 구현하고 있었다.

 

2. 오류

위시리스트 기능을 테스트하던 도중 아래와 같은 상황이 발생하였다.

하트를 약 5~6번 정도 눌러 서버에 요청을 보냈을 때, 아래와 같이 구글 크롬 개발자 도구의 (네트워크 탭 - 상태) 부분이 "대기 중"이라는 상태가 되고 위시리스트 기능이 작동을 안 하는 것이었다.

처음 5~6개의 요청은 정상적으로 작동하였기 때문에 당연히 서버 쪽 오류는 아닐 거라 생각했다.

그래서 신나게 React 코드를 3시간 동안 쳐다보며 수정 작업을 하였다.

하지만 3시간이 지나도 삽질은 끝나지 않았고, 포기할까 생각하던 도중,, 서버도 한번 건드려 보자라는 생각을 했다...

막 건드리다가 결국 해결했는데 너무 허무했다....ㅠ

 

3. 해결

오류가 났던 코드

homeRouter.post(API주소, async (req, res) => {
    const { user_id, product_id } = req.body;
    // 기타 처리 코드 ...
});

 

해결한 코드

homeRouter.post(API주소, async (req, res) => {
    const { user_id, product_id } = req.body;
    const status = 기타 처리 코드 ..
    res.send(status);
});

위시리스트 기능을 테스트 할 때 post, delete 방식은 결과를 리턴하는 게 없어서 res.send(); 를 사용 안 해줬었는데 이 부분에서 오류가 난 것이었다...

get 방식이 아니더라도 꼭 서버에서 뭐든 반환해주자!!