본문 바로가기

express9

sequelize (시퀄라이즈) 설치, 세팅하기 설치 sequelize-cli : 시퀄라이즈 명령어를 실행하기 위한 패키지 mysql2 : mysql과 시퀄라이즈를 이어주는 드라이버 $ npm init -y $ npm install express morgan sequelize sequelize-cli mysql2 세팅 다음 명령어를 호출하면 config, migration, models, seeders 디렉토리가 생긴다. $ npx sequelize init config 디렉토리 안 config.json에서 development 속성들을 내가 사용할 데이터베이스에 맞춰서 변경해준다. development을 수정하는 이유는 현재 코드를 작성하는 개발환경이 development이기때문. (혹시 operatorAliases 속성이 들어 있다면 삭제해주자.).. 2022. 7. 16.
[220210] 템플릿 엔진, nunjuck란? 목록 1. nunjucks의 역할 2. nunjucks의 문법 3. nunjucks 설치법 (링크) 1. 브라우저에 입력된 값을 받아 html을 다시 짜는 nunjucks html이나 css를 사용할때, 서로 다른 파일을 연결하기 위해 script나 style을 사용했었다. 그와 같게 자바스크립트도 독립적으로 존재한다. 그래서 js도 서로를 연결해주는 수단이 필요한데, 그게 바로 템플릿 엔진인 nunjucks다. 그렇다면 템플릿 엔진은 뭘까. 지정된 템플릿 양식에 데이터를 조합해서 HTML문서를 만드는 소프트웨어다. 우리가 보는 웹사이트 화면을 만들어줄때 도와준다고 생각하면 쉽다. 간단히 그림을 그려보자면, 이렇게 이해하면 편하다. 웹서버는 헤더를 읽어주는 express를 통해서 브라우저가 보내주는 요청.. 2022. 2. 10.
[220209] 세션 사용하기 : express-session, memorystore 설치 npm install express-session memorystore 매번 실행할때마다 쿠키를 가져오는 expres-session과 메모리를 저장할 장소에 관한 memorystore 라이브러리기 때문에 npm을 통해서 설치해준다. 세팅 const session = require('express-session') const memorystore = require('memorystore')(session) 세션을 사용할때 3가지를 기억하고 가자 1) 암호화 : 생성하는 결과물들이 겹치지 않게하는 처리 2) 세션을 저장할 공간 : 메모리에 하니? 하드에 하니? 서버에 하니? -> 우리는 메모리에 저장함. 3) 쿠키의 설정 : 세션이라면 기본적으로 필요한 쿠키. 보통은 쿠키의 만료시간이나 쿠키의 범위를 .. 2022. 2. 9.
[220209] 라우터 2개 사용하기, 라우터를 폴더화 시키는 2가지 방법 목록 1) 라우터 2개 사용하기 2) 다른 파일에 있는 코드를 불러오기 3) 라우터를 폴더화 시키기 라우터에 미들웨어 2개 넣기 app.get('/join', (req,res,next)=>{console.log('join1'); next()}, (req,res)=>{console.log('join2')} ) 2개를 이렇게 넣을 수도 있지만 보기에 복잡해서 따로 변수로 받아 넣는 경우가 더 많다. //2) 코드 안에 없으므로 코드 밖에서 a를 찾는다 let a = (req,res,next)=>{ console.log('join1'); next() } app.get('/join', a, (req,res)=>{ //1) a를 코드 안에서 찾는다. //3) a를 실행한다 //4) 그 다음 인자를 실행한다. co.. 2022. 2. 9.
[220207]크롬에서 개발자도구>네트워크를 켠 상태에서 새로고침을 하면 인터넷이 끊기는 현상 해결 네트워크 수업을 따라가야하는데 크롬에서는 매번 오류가 떠서 환장하겠다. 혼자서 해결을 도저히 못해서 교수님께 질문했고, 5분만에 고쳐주심. 감사합니다ㅠㅠㅠㅠㅠㅠ 개발자도구 > 네트워크로 들어가서 빨간 박스를 누르면 다음같은 박스가 뜨는데, 나는 오프라인으로 되어있었다. 혹시 또 이런일이 일어날지도 모르니까 미래의 나를 위해서 적어놓는다. 그리고 미래의 나야, 앞으로 에러메세지가 뜨면 그거 긁어서 구글에 때려박아서 검색돌리렴. 굳이 한글로 문제 입력하지말고. 그게 가장 최선의 해결방법이야... 2022. 2. 7.
[220204] 서버로 이루어진 게시판 만들기(CRUD 구현 : 생성,작성,수정,삭제) 목록 1. 홈 만들기 2. 리스트 게시판 만들기 3. 글쓰기 게시판 만들기 4. 글보기 게시판 만들기 5. 글삭제 기능 만들기 6. 글수정 기능 만들기 여태까지 배웠던 내용을 총 정리하면서 게시판을 만들어보자. 웹템플릿 express, 템플릿엔진 nunjucks를 사용하기 위한 전제코드는 밑에 적어놓고, 앞으로 설명할때는 생략하겠다. //express를 쓰기 위한 세팅 const express=require('express') const app=express() //nunjucks를 쓰기 위한 세팅 const nunjucks=require('nunjucks') app.set('view engine','html') nunjucks.configure('views',{ express:app }) //heade.. 2022. 2. 4.
[220128] nunjucks 설치, 세팅, 사용 목록 1. 템플릿엔진 2. nunjucks 설치 3. nunjucks 세팅 4. nunjucks 사용 5. nunjucks 흐름 이해도 (링크) node.js 시작하기전 프로그램 세팅하는 법은 여기에! https://hancoco.tistory.com/70?category=1035202 [220125] 맥북에서 터미널, nodejs 개발환경 세팅하기 (M1칩) + 용어설명, npm, nvm, express 터미널 명령어 알기 기본적인 명령어 ls : 현재 있는 디렉토리 안의 파일 리스트를 출력해주는 -a : 숨긴 디렉토리까지 보여줌 -l : 자세히 보기 pwd : 어떤 디렉토리 경로에 있는지 절대 경로로 표 hancoco.tistory.com 템플릿 엔진 웹 개발에서, 지정된 템플릿 양식과 데이터가 합쳐.. 2022. 2. 2.
[220127] require, export 명령문 목록 1. require 메서드 2. exports를 통해 추가하기 NODEJS의 require 메서드 require은 표준 문법이 아니다 : 표준에 없는데 왜 nodejs에 이게 필요할까? 자바스크립트는 여러 파일에서 사용할 경우, 불편했다. 왜? A 파일에 있는 변수가 왜 B 파일에서 실행될때 같이 실행되지? (브라우저의 예시) 다른 사람들과 협업할때 불편함. (예시) 내가 a변수를 만들었는데, 다른사람도 a변수를 선언하거나 사용 --> 에러발생 이를 방지하기 위해 모듈(파일을 가져와서 사용할 수 있게끔 만들어 주는 시스템)이 나옴. 모듈은 ES7부터 있었음. -> import문이 생겨있음 근데!! import가 나오기 전에 NODEJS가 먼저 만들어 놓은 require가 존재. import(리액트때.. 2022. 2. 2.
[220125] 맥북에서 터미널, nodejs 개발환경 세팅하기 (M1칩) + 용어설명, npm, nvm, express 목차 1. 터미널 명령어 2. npm 사용하기 3. express 사용하기 4. 서버 실행하기 터미널 명령어 알기 기본적인 명령어 ls : 현재 있는 디렉토리 안의 파일 리스트를 출력해주는 -a : 숨긴 디렉토리까지 보여줌 -l : 자세히 보기 pwd : 어떤 디렉토리 경로에 있는지 절대 경로로 표시해준다. Print Working Directory의 약어 cd : 작업하는 디렉토리의 위치를 바꾸는 명령어. Change Directory의 약어 mkdir : 디렉토리를 만들어준다. clear : 터미널 화면을 비워준다. d... 디렉토리 - ... 파일 / : 최상위 디렉토리 cd / : 최상위 디렉토리로 이동 cd /root : 루트 디렉토리로 이동 /home/계정명 : 홈디렉토리 맥이랑 리눅스랑 비슷.. 2022. 2. 2.