230305_TIL

reggias·2023년 3월 7일
0

I learned

목록 보기
55/62
post-thumbnail

프로젝트 중에 회원삭제 기능을 만들다가 하나의 HTTP 요청 메서드 안에서 다른 메서드도 같이 사용할 수 있다는 사실을 알게 되어 사용하다가 어려웠던 점들을 정리

  1. DELETE 메서드 안에서 GET 메서드 사용하기
  • admin.js 파일의 ajax로 DELETE 메서드를 서버로 보냄.
  • 이렇게 함으로써 서로 일대일 관계에 있는 파트너유저와 병원을 연결해 파트너유저를 삭제하면 병원도 함께 삭제되고 이어서 병원에 근무하는 의사의 정보도 함께 삭제하는 것이 가능했음. 머리로 이론은 생각해냈지만 이런 방법적인 부분이 부족해 팀원에게 조언을 구했더니 알게됨.
  1. 데이터를 받아오는데 res.에서 막힘
    컨트롤러에서 라우터로 넘겨줄 때 res.json을 사용했는데 에러가 등장함.
express deprecated res.json(obj, status): use res.status(status).json(obj) instead
  • express api reference(공식문서)를 살펴보았는데 무슨 뜻인지 잘 몰라서 비슷한걸 찾아보니 res.send([body])에도 비슷한 에러가 있는걸 발견하고 보니 res.send의 경우 인자값으로 Buffer object, String, object, Array만 가능해서 integer 값을 받지않기 때문이라고 함. 그래서 res.json을 res.send 로 바꾸고 toString()으로 String 으로 바꾸면 되지않을까 했는데 동일한 에러가 나왔고 여러 시행착오 끝에 두 가지 이상의 데이터를 받아오고 할 경우에는 객체로 만들어야 한다는 것을 알았음.
    스크린샷은 컨트롤러가 아닌 서비스지만 하는 방법은 동일함
profile
sparkle

0개의 댓글