일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- JWT 로그인 기능 구현
- node.js path
- FormData()
- JWT 만들어보기
- buffer.from
- express실행
- express router
- 비동기파일업로드
- mysql wsl
- 라우트 매개변수
- 라우터와 미들웨어
- express session
- 세션으로 로그인 구현
- useEffect clean up
- 블록 만들기
- javascript기초
- express.static
- 라우터미들웨어 분리
- OAuth 카카오
- ws 라이브러리
- JWT 하드코딩
- Uncaught Error: could not find react-redux context value; please ensure the component is wrapped in a <Provider>
- 라우터 분리
- css기초
- next 매개변수
- nodejs파일업로드
- useContext
- cookie-parser 만들어보기
- 시퀄라이즈 기본설정
- 아이디 중복체크기능
- Today
- Total
목록분류 전체보기 (110)
즐코
mySQL을 통해 DB에서 데이터 가져오기 초면이었다가 자기소개하고 인사나누고 친해졌다가 할일 다 끝나서 헤어지는 느낌 #1. DB를 접속할 수 있는 client와 DB server가 존재해야함 #2. client-DB server에게 핸드쉐이크(tcp요청/응답)를 한다. (http 통신과 비슷하다) #3. client-DB server간의 connection 완료 #4. client-DB server간에 socket이라는 게 생김 socket open! #5. 서로 내용을 계속 주고받을 수 있는 상태가 됨 (요청-응답 일회성 X, 실시간 가능) / 채팅, 스트리밍서버 #6. 자원소비가 너무 큼 -> 할일 다 끝나면 종료라는 걸 해줘야함 connection close #7. 그다음 socket close..
1. mySQL ?! 2. mysql 설치 및 초기 설정 3. mySQL 내 계정에 권한 부여하기 4. 웹서버(node) - DB서버(mysql) 연결하기 1. mySQL ?! DBMS - DataBase Management System / Database 내의 데이터에 접근할 수 있도록 해준다. 부동의 1위는 oracle이지만, 기업용 DB이며 유료다. 무료로는 mysql이 있지만 oracle이 인수합병해버렸고.. 거기서 mysql이 따로 나와서 만든게 mariaDB이다. 그래서 우리는 무료이고, mariaDB도 쓸수있게끔 mySQL로 배운다. express를 활용해서 게시판 서버를 만들 때 사용자가 글작성을 하면 작성한 글이 게시판 리스트에 바로 업데이트되었지만, 서버를 껐다 키면 사라졌다. 근데 사..
백엔드 테스트 하는 방법?! 어제 git/github을 통해서 처음으로 다른 사람들과 같이 코딩을 해보았다. 나는 프론트, 다른 두 분은 백엔드였다. 근데 git으로 branch를 나눠서 하고 있는 와중에 의문점이 든게 프론트를 맡은 내가 html파일을 만들어주지 않았는데, 백엔드하시는 분들이 어떻게 브라우저 화면없이 각 라우터들의 동작을 확인하지 싶었다... 그래서 오늘은 백엔드가 이 요청/응답 동작을 어떻게 테스트 하는지에 대해 배웠다. 즉, html (화면)이 완성되기 전에 post 요청이 잘 받아지는지, 데이터 전달이 잘 되어는지 우리가 임의로 테스트가 가능하다. 우선 여러 방법이 있겠지만 curl 을 활용하는 법 그리고 postman 툴에 대해 알아보았다. 1/ curl 커맨드라인 상의 툴, 커..
1/ session으로 로그인 기능 구현 2/ 라우터,미들웨어 분리하기 1/ session으로 로그인 기능 구현 #1. 로그인 시 사용자의 정보를 쿠키와 함께 세션에 담을 준비를 하자. 우선 이제 슬슬 코드를 조금 간단하게 쓰는 연습을 해야함 let userid = req.body.userid / let userpw = req.body.userpw 대신 let {userid,userpw}=req.body 로 줄이기 for문+if문 조합 대신 filter 메소드 써서 true인 값만 걸러내기 일단, filter는 배열을 return하니까, loginData를 [ ] 대괄호로 감싸야 배열이 통째로 리턴되지않고, 배열 안의 값만(여기선 객체) 출력된다. #2. 로그인 성공 시 vs 로그인 실패 시 응답을 나누..
1/ 코드의 분리 2/ express의 router 기능 3/ session 모듈 사용 1/ 코드의 분리 디자인 패턴 - 코드를 분리하는 디자인 MVC Model (특정 데이터를 담는 변수 - 객체나 배열 등) View (화면 표현 - html) Controller (M과 V를 컨트롤 하는 파일) 디자인패턴 MVC에 기반해서 우리는 코드를 효율적으로 분리해야한다. 처음 게시판/로그인 구현 시 모든 라우터, 미들웨어를 다 server.js에 다 때려박았다. 지금은 전반적인 로직을 배우기 위해 만든 초간단 사이트이므로 코드도 그다지 길지 않았고, 나혼자 보는 코드니까 코드별 기능 분간이 쉬웠다. 하지만, 실제 사이트는 코드 양이 방대하고, 팀원들이 각자 분업해서 코드를 작성할 것이다. 근데 이 때 한 파일을..
배열 메소드 예전부터 공부해야겠다 생각했는데 계속 미루다가 ㅎ 오늘 수업에서 배우게 되어서 정리해본다. 1/ forEach 배열 요소를 한개씩 꺼내면서 콜백함수 실행하기 / return값이 없다는 게 특징 (그래서 변수에 담는 게 안된다 ㅋ 변수에 담아서 출력해봤자 undefined 뜬다) 2/ filter 배열 요소 하나씩 꺼내서 조건문에 넣고, true인 값만 새로운 배열에 담아서 return 해준다. 3/ map 배열 요소를 하나씩 꺼내서 연산한 값을 새로운 배열에 담아서 return 해준다. 4/ reduce 배열 하나씩 돌면서 연산한 값 조합해서 return?!??!?! 초기값이 있냐 없냐에 따라서 반복횟수가 달라진다. .reduce(4개인자가진 콜백함수,초기값) 이전값 / 현재값 / 현재 인덱..
1/ 라우터와 미들웨어 2/ 미들웨어의 next 매개변수 3/ 라우트 매개변수 4/ 미들웨어 static 1/ 라우터와 미들웨어 - router 라우터 (요청에 대한 내용을 처리하는 부분) 클라이언트(브라우저)로부터 URI 및 요청 method를 받았을 때, 그 요청에 대응하는 역할 즉, 미들웨어를 실행시켜주는 역할 - middleware 미들웨어 (응답에 대한 내용을 처리하는 부분) 라우터의 함수 / 클라이언트(브라우저)에게 응답으로 줄 내용, 데이터를 작성하는 부분 기본적으로, router는 위에서부터 아래로 순차적으로 코드를 실행한다. 따라서, app.use같은 어떤 요청이든 다 실행하는 라우터가 있으면, http://localhost:3000 건 http://localhost:3000/profil..
1/ 세션 1. 세션이란? 2. 쿠키없이 세션으로만 가능? 3. 세션은 어떻게 사용하나 ? 2/ 세션 기반 로그인 기능 구현해보기 1/ 세션 1. 세션이란? 어제 배웠던 쿠키는 사용자 데이터(쿠키내용)의 저장을 사용자 측 브라우저가 해주기 때문에, 다른 누군가가 내가 로그인했던 컴퓨터의 브라우저를 파보면 쿠키가 쉽게 노출되므로, 보안에 취약하다. 이런 점을 보완하기 위해서, 보안을 요하는 데이터는 서버가 저장해주는 것이 세션이다. 쿠키와 세션 : http통신의 불편한(?) 특성 (요청-응답이 한번왔다갔다하면 남이 되는 사이)을 보완하기 위해서 만들어짐 한 사이트 내에서 서버가 각 특정 사용자를 인지해서 그 인지한 상태를 유지하기 위한 인식표, 인증서 같은 개념 쿠키 : 데이터 보관의 주체 = 개인 / 클..
1. 로그인 기능 구현 1/임시데이터생성 2/메인 페이지에서의 router 구현 3/ 로그인 페이지 router 구현 (get과 post) 4/ 메인 페이지에서의 router 구현 추가 5/ 로그아웃 router 구현 6/ profile 페이지 router 구현 2. cookie-parser 만들어보기 1. 로그인 기능 구현 1/ 임시데이터 생성 이건 DB 로 따로 처리해야하는 건데 배우는 단계이니 가입자가 한명뿐인 거처럼..ㅋ 데이터를 임의로 만들어줌 저번 CRUD 게시판 만들기 배울 땐 파일을 따로 빼서 require - module.exports로 데이터를 불러왔는데, 이번엔 데이터가 하나뿐이니 그냥 메인 서버.js 파일 상에 넣음 2/ 메인 페이지에서의 router 구현 이건 저번 주에 배운 내용..
1/http 통신내용 2/브라우저의 역할 3/쿠키의 역할 4/쿠키는 어떻게 주는건가? 로그인 구현을 배우기 위해서는 쿠키/세션을 알아야한다. 오늘은 쿠키에 대해서 배웠다. 우선, 쿠키/세션을 잘 알려면 "http 통신 내용 & 브라우저의 역할" 이 두 내용이 선행되어야 한다. 1/ http 통신 내용 : http 통신규격에 맞춰서 클라이언트 측 브라우저가 요청을 보내면, 서버가 응답을 보내준다. 서버는 응답메시지로서 응답헤더+한줄띄고+응답바디를 보내줌을 배웠다. 이 때 서버측인 우리는 이 응답헤더를 조작하는 게 가능함을 기억하자.. 근데, 이 브라우저-서버간의 요청-응답은 한번 왔다갔다하면 끝나버린다. 즉, 다음 요청/응답에 영향을 주지 않는다. 서로 할일 끝내자마자 모르는 사이가 되버림 근데, 이런 특..