본문 바로가기
Develog/TIL

백엔드 폴더 흐름 정리

by 예 강 2022. 5. 24.

개요

쇼핑몰 제작 팀 프로젝트에서 백엔드를 담당하게 됐다. 배울때는 할 수 있을 것 같았는데, 받은 코드의 폴더가 나뉘어져 있어서 각각 폴더가 어떤 역할을 하고 어떤 흐름으로 연동되는지 정리하려 한다.

 

 

db : 데이터가 array형식으로 저장되어 있다.

routers : 라우터들이 구현되어 외부에서 사용할 수 있게 export 되어있다. 

services : 필요한 기능들이 함수 또는 클래스로 구현되어있다. 클래스로 만들어져 있다면 객체를 생성한 후, export 해준다.

 

static-files : bulma 관련 코드들, 프론트에서 백을 향해 fetch함수를 통해 요청을 보낸다. 그리고 결과를 받아서 , html 스크립트에 적용한다. 즉 pug와 같은 라이브러리인 것 같다.

app.js : 백엔드의 main이라고 할 수 있는 파일, 라우터들을 import해서 app.use, 등으로 적용시킨다. 순서가 중요하기 때문에 순서에 신경써야한다.

app.use(express.static('static-files')) << 이런식으로 static-files 폴더를 지정하면 자동으로 경로에 html을 띄우게 설정할 수 있다.. 

index.js :  포트를 이용해 서버를 작동한다.

 

 

서버작동 =>

app.js를 통해 라우터가 등록됨 =>

사용자로부터 요청을 받음 =>

routers 에서 요청에 따른 결과를 반환함 (이 안에 router에서 요청을 처리하는데 필요한 기능들을 services에서 가져온다.) =>

router에서 res등을 이용해 요청에 응답. =>

static-files의 scripts.js 에서 응답을 받아서 처리함.

 

 

중간에 bulma가 섞여서 좀 헷갈리긴 했으나 이런 흐름이라고 생각하면 될 것 같다.

'Develog > TIL' 카테고리의 다른 글

Webpack  (0) 2023.06.29
Expo ReactNative Storybook 도입시 Constants.expoConfig.extra.storybookEnabled === undefined in windows  (0) 2023.06.18
express 경로 이해하기  (0) 2022.05.17
게임 랜덤 뽑기시스템 구현  (0) 2022.05.14
Blob  (0) 2022.04.20