목록Javascript (45)
9시 24분

개인화 - 사람마다 다른 웹페이지를 보여주는 것 ( ex. 장바구니, 로그인 유지 ) 쿠키를 이용하여 사용자가 이전에 이용했던 정보를 웹 서버에 전달 웹 서버는 그 정보를 바탕으로 접속한 사람이 누구인지 알아냄 *** Cookie & Auth 수업은 교육용이므로 현실에서 이용하기에는 생략된 부분이 많음, 맥락을 파악하고 후속 수업으로 현실에서 인증을 구현하자. 쿠키의 생성 쿠키는 HTTP 프로토콜에 포함된 기술 쿠키의 용도: 인증 / 개인화 / 방문자의 상태 check cookie 디렉토리를 생성하고 그 안에 cookie.js를 만들어주었다. 쿠키를 만들기 위해서는 응답 메시지를 조작해야한다. const http = require('http'); http.createServer(function(reque..

생활코딩의 Node.js 섹션을 보니 쿠키와 인증 세션과 인증 passport.js 다중 사용자 구글/페이스북 로그인 이 남았다. 카테고리를 계속 늘리는 것도 좀 그렇고 남은 것끼리 카테고리도 비슷해보여 저 섹션들의 내용을 하나의 게시판에 담기로 했다. 이번 글은 쿠키와 인증을 듣기 위해 선행되어야 하는 개념인 HTTP에 대한 글이다. HyperText Transfer Protocol Web browser, Web Server의 통신 규약 클라이언트는 서버에게 HTML을 요구함 - Request 서버는 응답으로 HTML을 전달 - Response HTTP는 Request와 Response를 나타냄 서버와 클라이언트가 컨텐츠를 주고받기 위한 공통의 약속 개발자 도구의 네트워크 탭 - 웹 브라우저와 웹 서버..

정적인 파일 서비스 정적인 파일에는 이미지, js, css 등이 있다. https://leeeeeyeon.tistory.com/79 에서 말한 기본 제공 미들웨어를 사용한다. public/images 폴더를 생성하여 그 안에 원하는 파일을 다운 받는다. app.use(express.static('public')); exports.home = function(request, response){ db.query(`SELECT * FROM topic`, function(error, topics){ if(error) throw error; var title = 'Welcome'; var description = 'Hello, Node.js'; v..
미들웨어란, 다른 사람 혹은 자신이 만든 함수로 생각하면 된다. 공식 문서 상의 정의는 '요청-응답 주기 중 req, res 객체에 대한 접근 권한을 갖고 변형시킬 수 있으며 미들웨어 스택 내 다음 미들웨어 함수에 대한 접근 권한을 next라는 인자로 갖는 함수'라고 되어 있다. body-parser과 compression이라는 미들웨어를 사용해보고, 미들웨어를 직접 만들어보고, 미들웨어의 실행순서에 대해 알아보자. body-parser create_process를 보자. var body = ''; request.on('data', function(data){ body = body + data; }); request.on('end', function(){ var post = qs.parse(body); ..
페이지 생성 app.get('/create', function(request, response){ topic.create(request, response); }); app.post('/create_process', function(request, response){ topic.create_process(request, response); }); 작성한 내용을 전달받을 때는 app.post()를 사용한다. post 방식으로 전송하면 app.get()이 아닌 app.post()로 자동으로 가지만 명시적으로 create_process라고 하여 구분하여 주자. exports.create = function(request, response){ db.query..
배포에 성공했으니 express도 얼른 신나게 해보장 실습 준비 npm install express --save express를 설치하고 node_modules에 반영되었는지 확인하자. var express = require('express'); var app = express() // app.get('/', (req, res) => res.send('Hello World')); app.get('/', function(req, res){ return res.send('Hello World'); }); app.listen(3000, () => console.log('Example app listening on port 3000!')); app.get - 라우팅 기존 코드에서는 if else 문을 이용하여 ..
https://deploy-test-0707.herokuapp.com/ IT 경진대회 때도 배포에서 막혀서 못했는데 이번에 성공했다 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ 진짜 그때 새벽 내내 붙잡아도 안되던게 성공하니까 너무 뿌듯하다 처음 성공했을 때 나 진짜 입틀막했다니까 ...?!?! 배포 과정을 따로 글로 남기지 않고 내가 참고한 URL들을 첨부하겠다. 1. 베이스로 참고한 것 https://wookgu.tistory.com/3 Express로 만든 웹 사이트 heroku에 올리기 학교 졸업 프로젝트로 만들었던 웹 애플리케이션을 heroku 서버에 올려 배포한 과정을 적어보려고 합니다. 먼저, 제가 만든 웹 애플리케이션은 express(node.js)와 mysql로 만든 단순한 형태의 웹사이트 wookgu.tisto..

이제까지 공부한 내용들을 github에 연동하여 올려두었다. 올리는 과정에서 bash에서 pull해버려서 공부한 내용 다 날릴뻔하고... 히스토리를 보고 되돌리기를 하는 과정에서 드디어 소스트리를 깔았다 ^ㅅ^,,, 그리고 repository가 이고잉님이 쓰던거 위에 얹어서? 쓰고 있길래 repository도 다시 팠다 앞으로는 bash에서 나대지 말고 소스트리 이용해서 하자...! node_modules는 파일이 많아서 .gitignore해주어야 하고 깃허브에서 다시 clone해서 사용할 때는 npm install을 통해서 node_modules를 다시 설치해주자!