개인 프로젝트/기본 프로젝트 환경 세팅(9)
-
[React-NodeJs-MySQL 프로젝트 세팅(restAPI+GraphQL)] (3) server : Nodejs 환경 세팅 - 컨트롤러, Router 설정
3장은 기본 서버세팅에 관련된 내용이다. 서버의 구성은 다음과 같다. api 폴더: graphQL의 resolvers controller 폴더: 실제 restAPI의 로직 구현 middlewares 폴더: app객체 생성, 권한처리, cors 처리 등의 미들웨어성 모듈 코드 관리 routes 폴더: endpoint와 controller를 연결하는 라우터 코드 관리 types 폴더: graphql 스키마 merge 결과가 생성되는 폴더 models 폴더: DB 스키마와 각 테이블을 정의 config 폴더: DB연결에 필요한 config를 정의 server.ts 파일: 서버 실행 파일 schema.ts 파일: graphql merge 로직 codegen.yml 파일: graphql 스키마 merge에 사용되..
2021.03.10 -
[React-NodeJs-MySQL 프로젝트 세팅(restAPI+GraphQL)] (2) client : React 환경 세팅 - CRA, Router설정
Client는 React로 기본 구성하였다 CRA를 통해 간단히 틀을 생성하고, 기본적인 페이지를 구성해보겠다. 1) CRA yarn add create-react-app을 통해 기본 프로젝트를 세팅한다 client의 구조는 크게 apollo-pages-router로 설정하였다. apollo 폴더 : 추후 apollo client 세팅에 필요한 코드들 router 폴더 : 기본세팅에선 진행하지 않지만 향후 필요한 권한처리나 상태관리를 위해 폴더로 묶음 pages 폴더 : 우리가 만들 client page들 2) Router 설정 router폴더는 Router 코드를 가지고 있다. react-router-dom을 이용하여 라우터를 관리한다.( 설치 필요) 전체 라우터는 BrowserRouter로 묶어내고,..
2021.03.10 -
[React-NodeJs-MySQL 프로젝트 세팅(restAPI+GraphQL)] (1) Introduction
사용하려는 기술 스택은 다음과 같다. 추후 진행되는 개인 프로젝트에서는 해당 세팅을 default로 진행하겠다. 이 기본 세팅에서는 restAPI 와 GraphQL을 모두 사용할것이다. DB구축은 AWS RDS를 이용하여 MySQL로 연결하였고, 스토리지 설정은 제외한다. 그림에는 TypeScript가 포함되어 있으나, 세팅은 추후에 진행하도록 하겠다. 모든 구축을 끝내고 포스팅하는 글이니 가끔 설명하지 않은 코드가 앞부분에서 보이더라도 이해 부탁.... 포스팅 순서는 다음과 같다. 1) Introduction 2) client : React 환경 세팅 - CRA, Router설정 3) server : Nodejs 환경 세팅 - 컨트롤러, Router 설정 4) server: Apollo server 세..
2021.03.10