본문 바로가기
728x90
728x90

경일76

[nodejs] 세션으로 구현한 로그인 기능 라우팅 0. 목차 1. 개요 2. express 라우터로 나누기 3. 미들웨어 나누기 1. 개요 2022.02.08 - [경일/nodejs] - [nodejs] 세션 이용해서 로그인기능 만들기 [nodejs] 세션 이용해서 로그인기능 만들기 0. 목차 1. 개요 2. 세션 3. 세션으로 로그인기능 구현 1. 개요 오늘은 세션으로 로그인 기능을 구현하는걸 해보기로 함. 그럼 우선 세션이 뭔지 세션과 쿠키의 차이점은 뭔지 아는게 우선이다. 2. kong-dev.tistory.com 2022.02.08 - [경일/nodejs] - [nodejs] express 라우터기능/ 미들웨어 나누기로 파일 쪼개기 [nodejs] express 라우터기능/ 미들웨어 나누기로 파일 쪼개기 0. 목차 1. 개요 2. 라우터 쪼개기 .. 2022. 2. 9.
[nodejs] express 라우터기능/ 미들웨어 나누기로 파일 쪼개기 0. 목차 1. 개요 2. 라우터 쪼개기 3. 미들웨어 쪼개기 1. 개요 라우터가 뭘까? 이제껏 만들었던 server.js 들에 만들었던 app.get 또는 app.post 같은 애들을 전부 라우터라고 한다. https://kong-dev.tistory.com/128?category=998366 [nodejs] todoApp async await 으로 조지기 0. 목차 1. 개요 2. 프로미스 인스턴스 객체를 리턴하는 함수 만들기 3. 적용 4. 후기 1. 개요 https://kong-dev.tistory.com/127 [nodejs] todoApp 만들기 feat. mySQL 0. 목차 1. 개요 2. 기본세팅 3. CRUD 4... kong-dev.tistory.com 내가 만들었던 todoApp은 .. 2022. 2. 8.
[nodejs] 세션 이용해서 로그인기능 만들기 0. 목차 1. 개요 2. 세션 3. 세션으로 로그인기능 구현 1. 개요 오늘은 세션으로 로그인 기능을 구현하는걸 해보기로 함. 그럼 우선 세션이 뭔지 세션과 쿠키의 차이점은 뭔지 아는게 우선이다. 2. 세션 우선 쿠키는 https://kong-dev.tistory.com/129 [nodejs] 쿠키 먹는거 말고 0.목차 1. http 통신 2. 브라우저 3. 쿠키 1. http 통신 서버에 요청을 보낼때는 일정한 규격에 따라 요청을 해야한다. 그런데 이 규격만 맞춰 준다면 새로운 내용을 작성해서 보내줄 수도 있다. 이제 kong-dev.tistory.com 이런거다. ㅎ. 쿠키방식의 가장 큰 특징으로는 데이터가 브라우저에 저장된다는 점이다. 반면 세션은 쿠키를 전달하긴 하지만, 그 쿠키를 암호화 해서 .. 2022. 2. 8.
[nodejs] 쿠키 이용해서 로그인 / 로그아웃 해보기 0. 목차 1. 개요 2. 세팅 3. 페이지구성 4. 기능구현 5. 멍청이짓 수정 6. user data 2개 이상일 때 5. 멍청이짓 수정2 1. 개요 https://kong-dev.tistory.com/129 [nodejs] 쿠키 먹는거 말고 0.목차 1. http 통신 2. 브라우저 3. 쿠키 1. http 통신 서버에 요청을 보낼때는 일정한 규격에 따라 요청을 해야한다. 그런데 이 규격만 맞춰 준다면 새로운 내용을 작성해서 보내줄 수도 있다. 이제 kong-dev.tistory.com 쿠키가 뭔지 대충 알았으니까 쿠키를 이용해서 로그인과 로그아웃기능을 만들어볼거다. 2. 세팅 세팅을 먼저하자. 우선 필요한 라이브러리는 express랑 nunjucks 인듯하다. 그리고 exprss 업데이트 사용할수.. 2022. 2. 7.
[nodejs] 쿠키 먹는거 말고 0.목차 1. http 통신 2. 브라우저 3. 쿠키 1. http 통신 서버에 요청을 보낼때는 일정한 규격에 따라 요청을 해야한다. 그런데 이 규격만 맞춰 준다면 새로운 내용을 작성해서 보내줄 수도 있다. 이제껏, response body 영역만 작업을 했었는데, 이번에는 header 영역작업을 해볼거임. res.setHeader() method를 이용해서 response header에 새로운 텍스트를 추가함 첫번째 인수가 key로, 두번째 인수가 value로 들어간다. app.get('/', (req, res) => { res.setHeader('headerkey', 'headerValue'); res.render('index.html'); }); Dev tool → network →response .. 2022. 2. 7.
[nodejs] todoApp async await 으로 조지기 0. 목차 1. 개요 2. 프로미스 인스턴스 객체를 리턴하는 함수 만들기 3. 적용 4. 후기 1. 개요 https://kong-dev.tistory.com/127 [nodejs] todoApp 만들기 feat. mySQL 0. 목차 1. 개요 2. 기본세팅 3. CRUD 4. 후기 1. 개요 https://kong-dev.tistory.com/122 [nodejs]todoApp 만들기(express, nunjucks, mongodb,body-parser) 0. 목차 1. 개요 2. 기본세팅 3. HTML & CSS 4. CRUD.. kong-dev.tistory.com ㅎ.. 하도 돌려써서 이젠 너덜너덜해진 나의 todoApp... 위 포스팅 맨 마지막에 보면 만든걸 async/await으로 조지고 싶.. 2022. 2. 4.
[nodejs] todoApp 만들기 feat. mySQL 0. 목차 1. 개요 2. 기본세팅 3. CRUD 4. 후기 1. 개요 https://kong-dev.tistory.com/122 [nodejs]todoApp 만들기(express, nunjucks, mongodb,body-parser) 0. 목차 1. 개요 2. 기본세팅 3. HTML & CSS 4. CRUD 5. 정리 1. 개요 가장 기본이 되는 CRUD 만들어볼거다. 사용할 라이브러리는, express, nunjucks, body-parser(exprss 내장 객체 대체가능)이며, 데이터 베이.. kong-dev.tistory.com 이거 만든거. mongoDB로 만들었던거 mySQL로 다시 만들어봄. 똑같은 부분은 제외하고 다른부분만 올릴거임..ㅇㅇ 2. 기본 세팅 2-1. mySQL https:.. 2022. 2. 4.
[nodejs]mySQL connect Error: connect ECONNREFUSED ::1:3306 이슈 해결 https://kong-dev.tistory.com/125 [nodejs] node에서 mySQL 연결(Error: connect ECONNREFUSED ::1:3306) 매우 간단하다. 우선 npm 을 통해 mysql 라이브러리를 다운 받아주자. $ npm init -y $ npm install mysql 다운 받은 라이브러리를 require를 통해 땡겨오고, const mysql = require('mysql') 이제 연결설정을 만.. kong-dev.tistory.com 여기서 발생한 이슈를 한참의 검색을 통해서 해결할 수 있었다. 에러내용은 다음과 같았다. 우선 이 이슈를 해결 하기 위해 사용한 임시방편의 수단이 const db = mysql.createConnection({ host: '127... 2022. 2. 3.
[nodejs] node에서 mySQL 연결(Error: connect ECONNREFUSED ::1:3306) 매우 간단하다. 우선 npm 을 통해 mysql 라이브러리를 다운 받아주자. $ npm init -y $ npm install mysql 다운 받은 라이브러리를 require를 통해 땡겨오고, const mysql = require('mysql') 이제 연결설정을 만들어주면 된다. const db = mysql.createConnection({ host: 'localhost', user: 'root', password: '비밀번호', database: '사용할데이터베이스명', port: '3306', }); 그리고 연결을 하면 db.connect(); 된다. 그리고 연결이 잘 됐는지 확인을 위해 데이터베이스 내의 테이블에서 데이터를 불러와보자. db.query('SELECT * FROM test', (e.. 2022. 2. 3.
[mySQL] mySQL 기본 사용법, CRUD(Create, Read, Update, Delete) 0.목차 1. 개요 2. CREATE DATABASE 3. CREATE TABLE 4. CRUD 1. 개요 https://kong-dev.tistory.com/122?category=998366 [nodejs]todoApp 만들기(express, nunjucks, mongodb,body-parser) 0. 목차 1. 개요 2. 기본세팅 3. HTML & CSS 4. CRUD 5. 정리 1. 개요 가장 기본이 되는 CRUD 만들어볼거다. 사용할 라이브러리는, express, nunjucks, body-parser(exprss 내장 객체 대체가능)이며, 데이터 베이.. kong-dev.tistory.com 이거 mongoDB Atlas로 만들었던거 mySQL로 만들려고 mySQL 공부함. 어려울줄 알았는데 .. 2022. 2. 3.
[mySQL] 맥북 Air M1칩 mySQL 설치 homebrew 가 설치 되어있다는 전제하에 써진 글입니다. homebrew 가 설치되어 있지 않다면, https://kong-dev.tistory.com/119?category=998366 애플 맥북에어 M1 환경설정 homebrew 부터 nodejs 까지 0. 목차 1. homebrew 2. iterm 3. nodejs 1. homebrew 터미널이용해서 packagemanager 인 홈브루를 설치. https://brew.sh/index_ko Homebrew The Missing Package Manager for macOS (or Linux). brew.sh 사이트.. kong-dev.tistory.com $ brew install mysql iterm 열어서 이거 입력해주면 됨..ㅎ 처음 설치면.. 2022. 2. 3.
[nodejs]todoApp 만들기(express, nunjucks, mongodb,body-parser) 0. 목차 1. 개요 2. 기본세팅 3. HTML & CSS 4. CRUD 5. 정리 1. 개요 가장 기본이 되는 CRUD 만들어볼거다. 사용할 라이브러리는, express, nunjucks, body-parser(exprss 내장 객체 대체가능)이며, 데이터 베이스는 noSQL인 mongoDB를 사용한다. 연휴기간중 mySQL 공부를 마치면 mySQL로 만드는 것도 포스팅 할듯..? 2. 기본 세팅 2-1. express $ npm init -y $ npm install express 터미널에 이거 두개 입력해서, npm 설치하고, npm을 통해 express 를 설치한다. const express = require('express'); const app = express(); app.get('/', .. 2022. 2. 1.
[Javascript] async 와 await 0. 목차 1. 개요 2. async 3. await 4. 응용..? 1. 개요 https://kong-dev.tistory.com/120 [Javascript] 콜백지옥과 프로미스 0. 목차 1. 콜백지옥 2. 프로미스 1. 콜백지옥 프로미스를 이해하기 위해선 콜백 지옥을 이해해야 한다. 콜백지옥을 이해하기 위해선 콜백펑션을 이해해야 한다. .. ㅎ https://kong-dev.tistory.com/116?categ kong-dev.tistory.com 저번 포스팅에서 프로미스를 다뤘었다. 그런데 프로미스도 then mthod를 연속적으로 체이닝 하다보면, 이 then은 뭐고 저then은 뭐고, 이 데이터는 어디 resolve에서 가져온걸까.. 싶은 생각이 들게된다. 그래서 나온게 async와 awa.. 2022. 1. 30.
[Javascript] 콜백지옥과 프로미스 0. 목차 1. 콜백지옥 2. 프로미스 1. 콜백지옥 프로미스를 이해하기 위해선 콜백 지옥을 이해해야 한다. 콜백지옥을 이해하기 위해선 콜백펑션을 이해해야 한다. .. ㅎ https://kong-dev.tistory.com/116?category=991165 [Javascript] 콜백함수 0. 목차 1. 개요 2. 콜백함수란 1. 개요 setTimeout(() => { console.log('hello world'); }, 1000); 이 코드를 보자. 콜백함수에 대한 개념이 잡히기 전의 나는 이 코드를 1000ms 가 지난뒤에, 에로우 펑션 안의.. kong-dev.tistory.com 최근에 정리한 콜백함수에 대한 글. 기억이 안나면 다시 보면 될듯. 우선 억지로 억지로 콜백 지옥을 하나 만들어 보.. 2022. 1. 28.
애플 맥북에어 M1 환경설정 homebrew 부터 nodejs 까지 0. 목차 1. homebrew 2. iterm 3. nodejs 1. homebrew 터미널이용해서 packagemanager 인 홈브루를 설치. https://brew.sh/index_ko Homebrew The Missing Package Manager for macOS (or Linux). brew.sh 사이트에 친절하게 설치하는 방법이 나와있다. 터미널에 입력하라는거 입력해주면 됨 $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" $ 사인은 빼고.. 여기서 부턴 m1 이상의 칩을 사용하는 모델에만해당됨. 친절하게 next step 이라고 알려준다. 저걸 복사붙여넣기 해주면.. 2022. 1. 27.
[Javascript] 콜백함수 0. 목차 1. 개요 2. 콜백함수란 1. 개요 setTimeout(() => { console.log('hello world'); }, 1000); 이 코드를 보자. 콜백함수에 대한 개념이 잡히기 전의 나는 이 코드를 1000ms 가 지난뒤에, 에로우 펑션 안의 코드를 실행한다. 라고 이해했다. setTimeout(()=>{ // delaytime 이후 실행될 코드 },delaytime) 라고 그냥 통째로 무지성으로 외웠다. 콜백펑션이 뭔지 정확히 알지 못했으니까, addEventListener 역시 마찬가지다. elem.addEventListener(('click'),()=>{ //elem이 클릭 됐을때 실행될 코드 }) 라고 그냥 통째로 머릿속에 집어넣고 외웠다. 사실, 코드를 짤때는 이렇게 이해해.. 2022. 1. 10.
[Javascript] 객체의 비교와 복사 0.목차 1. 개요 2. premitive 와 reference 가 메모리에 저장 되는 방식 2. 얕은복사 3. 깊은복사 1.개요 const a = { num: 1 }; const b = { num: 1 }; console.log(a === b); a라는 객체와 b라는 객체를 만든 뒤에 동일한 프로퍼티를 생성해 주었다. 두개를 비교한 값을 출력해보자. const a = { num: 1 }; const b = { num: 1 }; console.log(a === b); // false 분명 우리눈에는 똑같이 생겼는데, false가 출력 된다. 이걸 이해하기 위해서 메모리에 데이터를 저장하는 방법을 조금 알아볼 필요가 있다. 2. premitive 와 reference 가 메모리에 저장 되는 방식 그림을 그.. 2022. 1. 7.
[Javascript] 메서드와 프로토타입 0.목차 1. 개요 2. 메서드 3. 프로토타입 1.개요 우린 코드를 짜면서 정말 많은 메서드들을 사용한다. 메서드 없는 코딩을 상상하면 정말 끔찍하다. 너무나 소중한 메서드들... 메서드의 종류는 MDN한테 물어보고, 이번엔 메서드와 메서드의 깐부 프로토타입에 대해 조금 정리해보려한다. 2.메서드 2-1. 메서드란 메서드는 함수다. 근데 그냥 함수가 아니고, 객체에 들어있는 함수다. 이거 이상의 설명은 없을 듯..? 2-2. 메서드 만들기 그럼 직접 만들어 보자. const kong = { age: 29, introduce: function () { console.log(`I'm ${this.age}years old`); }, }; kong이라는 object를 만들고 age의 value에는 29을, i.. 2022. 1. 6.
[문제풀이] 문자열 갖고 놀기..? 문제설명 수업시간에 풀었던 문젠데 재밌게 풀어서 정리해 봄 1. string 변수에 할당된 문자열에 포함되어 있는 'e' 갯수 출력 2. string 변수에 할당된 문자열을 5개씩 나눠서 배열에 담아서 출력 3. 2의 결과에서 e, z, d, v, n이 포함된 value 삭제 후 출력 4. 3의 결과에서 value가 중복된 문자 / 숫자 가 있을 경우 중복된 문자 / 숫자 삭제(하나는 남김) 문제에서 제시한 예시와 각 문제에서 요구하는 출력값은 아래와 같다 let string = '1e5315166152e1152z1d1v4b1n'; // 2, // [ '1e531', '51661', '52e11', '52z1d', '1v4b1', 'n' ], // [ '51661' ], // [ '516' ] 접근방법 .. 2022. 1. 6.
[Javascript] this 동적 바인딩 0.목차 1. 개요 2. 메소드 생성 3. 메소드 호출 4. this 바인딩 1. 개요 수업에서 객체를 다뤘다. 혼자 객체도 만들어보고 메소드도 만들어보고 메소드로 property 참조하고 이것저것 해보다가, 어느 순간 깨달음이 와버렸다. 까먹기 전에 정리를 해보자. 2. 메소드 정의 const obj = { a: 1, print() { console.log('print'); }, }; obj라는 객체를 하나 만들고, 프로퍼티 하나 메소드 하나씩 만들어줬다. 메소드는 익명함수 안쓰고 스마-트 하게 method shorthand 써서 만들었다. es6에서 추가된 기능이다. 기존(es6 이전)에 어떤 형식으로 만들어졌는지 모른다면 문제가 되겠지만, 아니까 걍 쓰겠다. 3. 메소드 호출 const obj = .. 2022. 1. 4.
728x90
728x90