Frameworks/Express.js
8개의 글
EJS 프레임워크 변수 처리 Express와 EJS 모듈을 사용하다 보면 같은 페이지에 다른 종류의 변수를 렌더해줘야하는 경우가 생긴다. 예를 들어 똑같은 login 페이지에, 성공할때에는 success 스트링을 출력하고, 실패할때에는 fail 스트링을 출력한다고 해보자. 123456router.get('/login', function(req, res, next){ if(req.body.id == "dalkom") res.render('login', {success:"로그인 성공!"}); else res.render('login', {err:"없는 아이디!"});})Colored by Color Scriptercs 위와 같은 라우팅 코드를 통해서 login.ejs 페이지를 렌더링한다고 할 때에, 아무 조..
개발 환경 - Express 기본 모듈들(express-generator를 통해 설치된 모듈들) - Express-session 위의 두개만 설치하면 된다. 딱 로그인의 기능만 넣을 것이기 때문이다. ./app.js Express - session 세팅은 저번 포스팅대로 app.js에 해주면 된다. 즉 모듈을 불러들여서 기본 암호 등을 세팅해주면 끝난다. ./views/login.ejs , logout.ejs 보여줄 view는 2가지이다. 로그인을 위한 페이지, 로그아웃을 위한 페이지의 2가지이다. 먼저 login을 위한 페이지이다. 12345678910111213141516171819202122 Dalkom Login ID PW 로그인 Colored by Color Scriptercs 단순하게 아이디와..
Express-session 모듈HTTP 는 Stateless 한 통신을 한다. 즉 현재 상태에 대한 정보를 프로토콜 내부에서 기록하지 않는다는 것이다. 따라서 로그인 정보, 고객 정보 등을 브라우저에서 가지고 유지할 방법이 없었다. 따라서 이러한 필요에 의해서 나온 것이 쿠키 / 세션 의 개념이다. (자세한 설명은 네트워크 공부를!) 세션은 정보를 서버에서 저장한다. Express 에서 또한 이 세션을 유지하기 위한 모듈을 제작해 두었는데, 이것이 Express-session 이다. 기존에는 Express 모듈 내부에 자체 내장된 session 기능이 있었는데, 이를 따로 자체 모듈화 하였기 때문에 직접 설치하고 세팅해주어야 한다. 보통 세션을 통해서 로그인 정보를 서버 메모리에 저장한다. 또는 인터넷..
Jade ?Jade는 Express가 기본으로 제공하는 템플릿 엔진이다. 템플릿 엔진이란, 파일을 읽어들일 때에 엔진의 규칙과 설정에 의해 파일을 변환시키고, 화면에 출력시켜주기 위한 HTML 형식으로 바꿔주는 모듈을 의미한다. Jade 모듈 또한 같은 역할을 한다. Jade 문법대로 파일을 작성하면, 이를 Express에서 엔진을 사용하여 사용자에게 보여지기 위한 형태로 바뀐다. 이를 설정하는 곳은 express 폴더 내부의 ./app.js 파일인데, 그 중에서 다음의 내용에 해당한다. 14번 15번 줄이 엔진을 설정하는 곳인데, 14번은 엔진을 통해서 렌더링할 파일이 들어갈 폴더를 지정해준다.15번은 14번에 해당하는 폴더의 파일을 jade engine으로 변환하겠다는 내용이다. Jade는 굉장히 뭐..
Express 시작하기 Express 서버를 실행해 봅시다.저번 포스트에 package.json에 대해 배울때에, start라는 scripts에 ./bin/www 를 실행하는 코드가 있었습니다.따라서 npm 명령어로 실행해봅시다. npm start 그러면 위와 같이 node ./bin/www 명령어가 실행되는 것을 알 수 있습니다.PORT는 3000으로 설정되어 있습니다. 주소에 접속해봅시다. 인터넷 주소는 http://localhost:3000 혹은 http://아이피:3000 으로 접속하시면 됩니다. Express 기본 페이지가 뜨는 것을 볼 수 있습니다. 위 사진은 서버를 실행했던 CMD 창인데, morgan 모듈을 통해서 로그가 되고 있는 것을 볼 수 있습니다. GET method로 접근한 클라이..
모듈 분석이번 포스팅은 저번 포스팅에 express 명령어로 파일들을 만들었을 때, 자동으로 포함되는 모듈들에 대해 알아볼 것입니다. express --ejs --css sass 위의 커맨드를 쳐서 만들어진 폴더입니다.웹 템플릿으로 ejs 모듈을 사용하고, css 모듈로 sass를 사용합니다. 그럼 본격적으로 package.json 파일 분석과 기본 코드를 확인해보겠습니다.Package.json설치된 파일에서 package.json을 열면 다음과 같은 내용이 들어있습니다. 위에서부터 이름, 버젼, 배포 여부를 알려주는 name, version, private의 값이 있습니다. npm scripts로는 start를 하면 bin 폴더에 있는 www.js를 실행하도록 스크립트가 짜여 있습니다. 아래의 설치 모..
Express는 무엇인가?Node.js는 웹 개발에서 서버 프로그램이 언어로 관심이 높습니다.따라서 웹 서버 개발을 위한 수많은 모듈들이 개발되었는데, Express는 그 중 하나입니다.MEAN 스택의 하나인 E를 차지할 정도로 많이 사용되며, 주요한 모듈입니다. Express는 웹서버 프레임워크로, 쿠키, (지금은 따로 분리되었지만)세션, 파비콘, 로그 기록, 라우팅 등의 많은 기능들을 소화해 냅니다.Express에서 모든것을 관리하는 것은 아니지만, 확장하여 다른 모듈과 쉽게 연결할 수 있다는 장점이 있습니다.따라서 현재 가장 영향력 있고, 쉽게 배울 수 있는 Node.js 웹 프레임워크 모듈이라고 생각하시면 됩니다. Express 설치법Express를 설치하는 것은 굉장히 간단합니다.Node.js에..