1. api서버, 클라이언트랑 통신하는 서버 분리

기존 management폴더에 client폴더를 새로 파서

.git빼고 싹다 옮겨준다.

express generator를 이용해서 express앱을 생성한다. 디렉토리 명은 apiServer이다.

https://expressjs.com/ko/starter/generator.html

 

Express 애플리케이션 생성기

Express 애플리케이션 생성기 애플리케이션의 골격을 신속하게 작성하려면 애플리케이션 생성기 도구인 express를 사용하십시오. 다음의 명령을 이용해 express를 설치하십시오. $ npm install express-generator -g 다음과 같이 -h 옵션을 이용해 명령의 옵션을 표시하십시오. $ express -h Usage: express [options][dir] Options: -h, --help output usage informat

expressjs.com

생성된 apiServer의 package.json의 dependency에 있는 항목들을 설치하기 위해

npm install을 실행해준다.

일반적으로는 npm install 모듈명을 입력해서 모듈을 설치하지만 프로젝트의 루트경로에 package.json파일을 두고 
npm install 명령어를 입력하면  npm이 package.json에 명시된  dependencies부분의 모듈들을 모두 설치해 준다.
물론 package.json파일이 없는 상태에서 npm install 명령어만 입력하면 의존정보를  찾을수 없다는 오류가 난다.

 

분리한 후 디렉토리 모습

2. 서버 두개 실행시키기

루트폴더에 package.json 파일을 만든 후

client통신서버랑 api서버 둘다 실행시킬 수있게 scripts를 짜주고

 

concurrently 모듈을 설치해서 한번에 실행시킬 수 있게 세팅한다.

https://github.com/kimmobrunfeldt/concurrently

 

kimmobrunfeldt/concurrently

Run commands concurrently. Like `npm run watch-js & npm run watch-less` but better. - kimmobrunfeldt/concurrently

github.com

 

package.json을 세팅해놓고

> concurrently "npm:server" "npm:client"

한줄 입력시 백, 프론트 서버를 동시에 실행하도록 구현했다.

물론 포트번호를 둘이 안겹치게 바꿔야한다.

클라이언트는 3000번, api서버는 5000번을 썼다.

 

+ Recent posts