목록NodeJS (24)
개발공부일지
목차 1. 로그인 구현 설계 2. express 설치, 디렉토리 생성, 파일 작성하기 3. router 만들기 4. controller 만들기 5. service만들기 6. repository만들기 7. User 스키마 만들기 8. DB connection 9. repository 완성하기 10. service 완성하기 11. jwt 1. 로그인 구현 설계 - express 서버 열기 - html 작성하기 ( 로그인화면 ) - 디렉토리 생성하기 - 서버 골격 만들기 ( 라우터 나누기) - DB connection - JWT 만들기 2. express 설치, 디렉토리 생성, 파일 작성하기 npm init -y npm install express nunjucks / | - /lib | --- jwt.js |..
목차 1. cookie 2. Set-Cookie 3. cookie-parser 4. 암호화 1. cookie - 쿠키는 요청메세지를 만들어 요청헤더에 나임을 식별하게 알려준다. - 쿠키는 key와 value 쌍으로 이루어져있고, 브라우저(Client)에 저장된다. - F12 애플리케이션 storage에서 'name'과 'value'로 입력해볼수있다. - 쿠키는 브라우저(Client)에서 만들어준것으로 server는 요청헤더를 읽는것이다! - 클라이언트가 웹 사이트를 방문할 때 서버로부터 받은 "Set-Cookie" 헤더에 따라 설정된다. - 이러한 쿠키는 클라이언트에서 관리된다. - 다음 요청 시 서버로 다시 전송되고 이를 통해 서버는 클라이언트를 식별한다. 2. Set-Cookie app.get("/c..
목차 1. 기초설정하기 2. LIST페이지 구현하기 1. 기초설정하기 npm init -y npm install express nunjucks mysql2 - express, nunjucks,mysql2 설치하기 create database block10; use block10; CREATE TABLE boards( id INT AUTO_INCREMENT, title VARCHAR(200) NOT NULL, content TEXT, writer VARCHAR(20) NOT NULL, created_at DATETIME DEFAULT NOW(), hit INT DEFAULT 0, PRIMARY KEY(id) ); show tables; desc boards; SHOW STATUS LIKE 'Threads_..
목차 1. 디렉토리, 파일생성하고 패키지 설치, 설계하기 2. router 와 controller 나누기 3. entity 작성하기 4. repository 작성하기 5. service 작성하기 6. list 작업하기 7. write 작업하기 8. view 작업하기 9. 조회수 올리기 10. Update 작성하기 11. Delete 작성하기 1. 디렉토리, 파일생성하고 패키지 설치, 설계하기 - 디렉토리 / | - /node_moduels | - /src | --- /board | ------- /board.route.js | --- /user | ------- /user.route.js | --- index.js | - /views | - /public | - package.json | - packag..
목차 1. 디렉토리 생성하고 패키지 설치하기 2. 파일 만들기 3. 라우터 나누기 4. 템플릿 엔진 설정하기 5. controller (핸들러함수) 분리하기 1. 디렉토리 생성하고 패키지 설치하기 - 만들고자하는 디렉토리를 생성하고 라우터를 나누기 위해 설계하기 / | - /node_moduels | - /src | --- /board | ------- /board.route.js | --- /user | ------- /user.route.js | --- index.js | - /views | - /public | - package.json | - package-lock.json | - server.js - GET / - GET /boards/list - GET /boards/write - GET /b..
목차 1. express설치하기 2. nunjucks 설치하기 3. 필요한 라우터 만들기 4. 필요한 로직을 넣어주기 1. express설치하기 - 작업할 디렉토리(게시판) 터미널에서 작성하기 npm init npm install express const express = require("express"); const app = express(); app.get("/", (req, res) => { res.send("hello world!"); }); app.listen(3000, () => { console.log(`server start`); }); - express 라이브러리를 설치하고 불러온다. - 라우터를 하나 만들어서 127.0.0.1:3000 연결되는지 확인해본다. 2. nunjucks 설치..
목차 1. URL과 URI 2. Requset Method (GET, POST) 3. redirect() 4. bodyString 1. URL과 URI - nodejs공식문서에서 URL 을 검색하면 URL 문자열은 여러 의미 있는 구성 요소를 포함하는 구조화된 문자열이고, 구문 분석 시 이러한 각 구성 요소에 대한 속성이 포함된 URL 객체가 반환된다고 한다. URL → https://user:pass@sub.example.com:8080/p/a/t/h?query=string#hash host → sub.example.com:8080 라이브서버를 열었을때 http://127.0.0.1:5500/index.html 로 열리는데, 파일네임과 확장자까지 뜨게된다. URL : http://127.0.0.1:55..
목차 1. Response 클래스로 만들기 2. server 만들기 3. Request class 만들기 4. header와 body나눠주고 sendFile보내기 1. Response 클래스로 만들기 - lib 디렉토리 안에 response.js 파일 만들기 const fs = require("fs"); const path = require("path"); const TEMPLATE_DIR = "views"; const STATUS_MESSAGE = { 200: "OK", 404: "NOT FOUND", }; class Response { version = "HTTP/1.1"; statusCode; headers = {}; body; socket; constructor(socket) { this.sock..
목차 1. class Response 만들기 2. startLine 역할에 맞게 구분해주기 3. status setter 만들기 4. "headers" 작업하기 5. "body" 작업하기 6. "header"와 "body" 합치기 7. send 메서드 만들기 8. sendFile과 readFile를 만들어서 활용하기 1. class Response 만들기 class Response { version = "HTTP/1.1"; statusCode = 200; statusMessage = "OK"; constructor() {} end() { const startLine = `${this.version} ${this.statusCode} ${this.statusMessage}`; console.log(star..
목차 1. net 내장 모듈 2. Server파일, Client파일 만들고 connect하기 3. 세션이 맺어졌을때 client → server hello world라는 텍스트 보내기 4. sever → client hello world라는 텍스트 보내기 5. request(요청메시지) 파일로 보내기 6. request(요청메시지) 파싱하기 7. respones message 보내기 1. net 내장 모듈 https://nodejs.org/dist/latest-v18.x/docs/api/net.html const net = require("net"); - net은 라이브러리로 socket을 생성해준다. - 3way-handshake를 경험해보기위해서 - 서버는 언제 어떻게 요청이 들어올지 모르니까 lis..