본문 바로가기

Back-end/Python43

[GraphQL] 무작정 시작하기 (3) - Object Field를 이용한 Pagination 2020/04/13 - [Back-end/Python] - [GraphQL] 무작정 시작하기 (1) - Schema & Query 2020/04/14 - [Back-end/Python] - [GraphQL] 무작정 시작하기 (2) - Mutation 0. 서론 일반적으로 데이터 목록을 조회할 때, 목록 전체를 조회하는 것이 아니라 페이지 단위로 조회한다. GraphQL에서는 Cursor기반의 Connection으로 강력한 Pagination 기능을 제공하는데, 필자처럼 GraphQL을 시작한지 얼마안된 초보자라면 거부감이 들것이다. 그래서, ConnectionField대신 기본적인 ObjectField를 이용하여 Pagination을 구현해보았다. 그래서 이번 포스트에서는 ObjectField를 이용한 .. 2020. 4. 20.
[GraphQL] 무작정 시작하기 (2) - Mutation 2020/04/13 - [Back-end/Python] - [GraphQL] 무작정 시작하기 (1) - Schema & Query 0. 서론 지난 포스트에서 GraphQL에 대해서 간략하게 알아보고 데이터를 조회하는 서버를 간단하게 만들어보았다. 이는 데이터의 기본적인 처리 프로세스인 CRUD(Create, Read, Update, Delete) 중 Read(조회)만 구현한 것이다. GraphQL에서 Read(조회)는 쿼리(Query)가 처리하며, Create(입력), Update(수정), Delete(삭제)는 뮤테이션(Mutation)이 처리한다. 그래서 이번 포스트에서는 데이터 변조를 위한 뮤테이션(Mutation)들을 구현해보도록 하겠다. 1. 프로젝트 준비 2020/04/13 - [Back-end.. 2020. 4. 14.
[GraphQL] 무작정 시작하기 (1) - Schema & Query 0. 서론 최근 Javscript로 2048 웹게임을 만들고 있는데, 게임 결과를 저장할 수 있게 Database(MongoDB)를 연동하였다. 결과 조회는 평소처럼 클라이언트에서 목록을 요청하면, 서버에서는 미리 작성된 쿼리를 통해 DB를 탐색하고 결과를 반환하는 방식을 사용하였고 이를 REST API로 구현하였다. 처음에 설계한대로 '이름, 점수, 입력시간'만 조회하면 문제가 없었다. 그런데, 게임의 완성도를 높이기위해 게임 모드를 추가하게 되면서 한가지 불편한 점을 느끼게 되었다. 화면에서 '게임모드'의 값을 추가로 가지고 오기위해는 서버에 미리 작성된 쿼리도 수정을 해야하는 번거로움이 있던 것이다. 이러한 불편함을 해소할 방법을 찾던 중 'GraphQL'에 대해서 알게 되었다. GraphQL은 페.. 2020. 4. 13.
[SMTP] Python으로 메일 발송 하기. (With. 첨부파일 ) 2020/02/20 - [Back-end/JAVA] - [SMTP] JAVA로 메일 발송 하기. (With. 첨부파일 ) 0. 서론 지난 포스트에서는 Java로 메일을 발송하는 예제를 다루어보았다. 이번에는 Python을 가지고 만들어 보았는데, Java로 한번 만들어봐서 그런지 좀 더 만들기 수월했다. 특히, Java는 라이브러리를 다운받아서 사용해야되지만 Python은 내장 패키지를 사용하므로 다운받을 필요가 없었다. 1. 프로젝트 준비 1-1. Gmail 인증을 위한 앱 비밀번호 발급 1) 구글 계정으로 접속 후 로그인. : https://myaccount.google.com/ 2) [ 보안 ] > [ Google에 로그인 ] > [ 2단계 인증 ]을 클릭 후 등록. : https://myaccou.. 2020. 2. 22.