본문 바로가기

공부

(56)
[Node.js] 모듈화 저번 공부 때는 사실 여기서 포기하고 다시 시작한거여서 굉장히 조심스럽게 모듈화를 진행하였다. 한 번 꼬이니 답이 안나와서 갈아치우고 다시 한 건데 한 번 다시 보고나니 뭔가 좀 알 것 같더라... 그래도 오류가 나면 겁은 난다. 아무튼 하나씩 해보려고 한다. 파일은 총 3가지로 app.js, user.js, user_schema.js 이렇게 3가지다. user.js : 로그인, 회원가입, 사용자 목록 user_schema.js : database를 처리를 필요로 하는 함수 (사용자 확인 시 DB 검색, 사용자 추가시 DB 삽입) app.js : 메인 서버로 동작 user_schema.js var crypto = require('crypto'); var Schema = { }; Schema.createS..
[Node.js] express로 웹 서버 만들기(virtual 함수와 암호화) 오늘은 보안관련해서 공부를 해보았다. 코드가 많이 바뀌어서 그렇게 스무스하게 하지는 못했지만 일단 적어가면서 나도 이해를 해야겠다. 개념 일단 virtual 함수란 가상의 함수를 만들어서 단방향 암호화로 암호화 당하는 속성을 따로 만들어준다고 생각하면 될 것 같다. 책의 암호화 방식을 흉내내어 한 번 만들어 보았다, UserSchema에 가상 속성인 Password를 사용해서 저장할 때는 Hashed_Password에 암호화하여 넣어준다. 같은 이름으로 암호화 해서 안 넣는 이유를 알고 싶긴하지만 서로를 구분하고 싶어서... 가 아닐까?(학교 강의에서 교수님이 코딩에서 존재 이유의 대부분에 가독성이 들어간다고 하긴하던데...) 아무튼 이런 구조를 이해하고 코드를 수정했다. 코드 function creat..
[Node.js] express로 웹 서버 만들기(사용자 리스트) 코드 여기까지가 거의 복습하는 구간인데 사용자의 리스트를 뽑아내는 걸 진행하였다. 아직 활용이 부족하긴한데 중요하다고 생각하는 /process/listuser 부분에 대해서 포스팅 하도록 하겠다. 사용자 리스트 아래 [전송] 버튼을 누르세요. 일단은 HTML 코드이다. 이 때까지 사용했던 로그인이나 로그아웃이나 404나 여러가지 html 중 가장 간단하게 그냥 실행을 위해서 사용하는 코드이다. router.route('/process/listuser').post(function(req, res){ console.log('/process/listuser 호출됨.'); if(database){ UserModel.findAll(function(err, results){ if(err){ console.error..
[Node.js] express로 웹 서버 만들기(MongoDB) 이러쿵 저러쿵 사실 저번에 적은 내용을 한 번 더 적을 생각은 없고 간단하게 결과만 보고 넘어가려고 한다. var express = require('express') ,http = require('http') ,path = require('path'); var bodyParser = require('body-parser') , cookieParser = require('cookie-parser') , static = require('serve-static') , errorHandler = require('errorhandler'); var expressErrorHandler = require('express-error-handler'); var expressSession = require('express..
[Node.js] express로 웹 서버 만들기(multer미들웨어, 이미지 업로드) 오늘은 저번에 이어서 multer 미들웨어를 사용하여 이미지를 업로드 해볼 것 이다.(물론 아직 서버도 뭣도 없기 때문에 업로드 장소는 local이다.) npm install multer --save 당연하게도 multer 모듈을 먼저 다운 받아준다. 책에 쓰여있는대로 해석하자면 멀티 파트 포맷으로 된 파일 업로드 기능을 사용한다는데 아마 multer이 그것을 지원해주는 듯 하다. 모듈 이번에 코드에 들어간 모든 모듈이다. var express = require('express') ,http = require('http') ,path = require('path'); //bodyParser 모듈 var bodyParser = require('body-parser') ,serve_static = requi..
[Node.js] express로 웹 서버 만들기 (쿠키와 세션) 이번에는 우리가 흔히 아는 쿠키와 세션에 관해서 한 번 공부해 보았다. 쿠키와 세션의 차이점은 쿠키는 웹 브라우저 세션은 웹 서버에 정보가 저장되는 것이라 보면 된다. 쿠키 이번에는 cookie-parser라는 모듈을 사용할 것이다. npm install cookie-parser --save 미리 모듈을 다운 받아주고 시작을 해야한다. var cookieParser = require('cookie-parser'); 일단 모듈 선언을 당연하게 하고 시작한다. cookiParser로 cookie-parser 모듈을 다룰 것이다. app.use(cookieParser()); 그리고 쿠키 파서를 사용. 이라는 의미로 use를 사용하는 것 같다. 이후 router.route를 사용해서 쿠키를 작성할 것이다. ro..
[Node.js] express로 웹 서버 만들기(static 미들웨어, 라우팅) 저번 글에 이어서 오늘은 미들웨어를 사용해 보려고 한다. 오늘 사용하는 static은 '특정 폴더의 파일들을 특정 패스로 접근할 수 있도록 만들어 준다.'고 하는데 일단 써봐야지 알지 않겠나 싶다. 일단 모듈 설치를 해야한다. npm install serve-static --save 대충 모듈을 설치해주었다. bodyParser와 static을 사용하여 데이터 보내기 다음으로 serve-static과 bodyParser를 같이 사용할 예정이다. bodyParser는 'POST 방식에서 원하는 파라미터를 확인할 수 있는 모듈'이다. 이번에는 public 폴더 하나와 HTML 파일 하나를 만들어서 사용해 볼 것이다. 로그인 아이디 비밀번호
[Node.js] express로 웹 서버 만들기(요청 객체와 응답 객체) 이번에는 요청 객체와 응답 객체에 관해서 공부할 것이다. send()메소드 send() 메소드는 Buffer, Json, Json배열 등 다양한 데이터를 보낼 수 있다. var express = require('express') , http = require('http') var app = express(); app.set('port', process.env.PORT || 3000); app.use(function(req, res, next){ //미들웨어의 역할을 하는 녀석 console.log('첫번 째 미들웨어에서 요청을 처리함'); res.send({name : '소녀시대', age:20}); }) http.createServer(app).listen(app.get('port'), function..