GraphQL 실패 시 상태코드 관리일반적으로 HTTP 통신에서는 통신이 실패하면 4**, 5** 대 에러를 반환합니다. 하지만 GraphQL에서는 성공해도 200, 실패해도 200으로 에러를 반환하고 있어 이렇게 처리하는 이유에 대해 궁금했습니다. 200대로 처리하는 이유를 찾아보고 에러 코드를 어떻게 클라이언트에게 전달할지 고민하였습니다.(1) 서버 단에서 통신 실패 시 상태 코드를 변환할 것인지, (2) error 메시지 안에 상태 코드를 전달할 것인지 고민하였습니다. GrpahQL 실패 시 200 코드를 반환하는 이유1. Multiple 요청 처리GraphQL에서는 단일 요청뿐만 아니라 여러 개의 Query나 Mutation을 처리할 수 있습니다.일부 요청이 실패할 수 있고, 성공할 수도 있어 M..
이번 장에서는 GraphQL을 통해 조회하는 방법과 조회하는 객체를 정의하는 방법에 대해 작성하겠습니다. 1. 조회하는 방법POST 메서드를 통해 하나의 API로 요청을 보냅니다.조회의 경우 query { ... } 를 body에 담아서 전송합니다. (query 지시어는 생략 가능)조회하는 필드를 작성하여 클라이언트 측에서 필요한 데이터만 받을 수 있습니다. (REST에서 overfetching 문제 개선) 2. 조회하는 객체조회하는 객체는 일반적으로 type { ... } 으로 선언합니다.! 기호가 붙으면 non-null type을 의미하며, [ ... ] 는 리스트 객체를 의미합니다.Scalr 타입으로 Int, Float, String, Boolean, ID가 있습니다. ID는 객체를 다시 요청하거나..
웹 애플리케이션을 개발하다 보면 checkbox를 통해 동의 여부와 같이 사용자에게 선택을 요구하는 경우가 있습니다.저는 쇼핑몰 사이트를 개발하면서 관리자 입장에서 구매 내역을 관리하면서 결제 여부, 취소 여부, 환불 여부를 관리하는 부분에 있어 헷갈렸던 부분을 기록하고자 합니다. 관리자 구매 내역 수정 "> " alt="상품 이미지" style="width: 30%;"> 상품명 : 구매자 : ..
쇼핑몰과 서점 애플리케이션을 사용하다 보면 장바구니 기능을 볼 수 있습니다. 보통 form 태그를 통해 안에 작성된 input 태그들을 하나의 묶음으로 전송하여 처리하곤 했습니다. 하지만, 장바구니와 같이 form 태그로 묶어서 전달해야 하는 데이터가 1개가 아닌 여러 개 일 때 어떻게 해야 될지 의문이었습니다. 결론 : 1) js 문법을 이용하여 사용자가 (동적) (체크박스)를 선택한 데이터를 확인합니다. 2) 이를 서버에 json 형태로 전달해주고, 서버에서는 json 데이터를 반복문을 통해 DB에 쿼리를 전송합니다. form 태그는 보통 서버에 데이터를 전송할 때 사용합니다. 주로 사용하는 속성으로 action과 method가 있습니다. action은 전송할 서버의 주소를 담고 있습니다. metho..