node.js 62

Node.js 생활코딩 정리 - 웹앱 제작 코드 개선하기

웹앱 제작 6 : 코드의 개선 1. 라우팅 중복의 제거 방법 : 글목록 표시 부분 2. 글작성하기를 좀 더 세련되게 표현 3. 글작성후 redirect를 통해 바로 쓴 글로 이동 var express = require('express');//익스프레스를 가져옴 var bodyParser = require('body-parser') var fs = require('fs'); var app = express(); app.use(bodyParser.urlencoded({ extended: false }));//body parser를 사용함 app.locals.pretty = true;//템플릿 줄바꿈 app.set('views', './views_file');//템플릿 폴더 위치 표시 app.set('view..

Node.js 생활코딩 정리 – 웹앱 제작 파일로 된 본문 읽기

웹앱 제작5 : 파일로 된 본문 읽기 //글을 클릭했을때 옴 app.get('/topic/:id', function(req, res){ var id = req.params.id;//id로 접근을 함 //다음부분은 topics:files때문에 그런것임 fs.readdir('data', function(err, files){//첫번째는 에러 두번째는 파일목록을 전송받음 if(err){//에러가 있다면 여기서 처리 res.status(500).send('Internal Server Error'); } fs.readFile('data/'+id, 'utf8', function(err, data){ if(err){//에러가 있다면 여기서 처리 res.status(500).send('Internal Server Er..

Node.js 생활코딩 정리 – 웹 앱제작 글목록 만들기

웹앱 제작4 : 글 목록 만들기 jade template 엔진에서 Iteration 사용법을 알아야 글목록을 출력 할 수 있다. app_file.js에서 추가한 내용 //글목록을 표시 app.get('/topic', function(req, res){ fs.readdir('data', function(err, files){//첫번째는 에러 두번째는 파일목록을 전송받음 if(err){//에러가 있다면 여기서 처리 res.status(500).send('Internal Server Error'); } res.render('view', {topics:files});//템플릿 사용 topics라는 이름으로 files를 넘김 }); }); 여기서 topics라는 이름으로 files를 넘겨준다. files는 다음 ..

Node.js 생활코딩 정리 – 웹애플리케이션 제작 첫번째 라우팅 및 파일 생성

웹애플리케이션 제작 topic/new로 접속시 폼 출력함 첫 라우팅 하기 소스 app_file.js var express = require('express');//익스프레스를 가져옴 var app = express(); var url app.locals.pretty = true;//템플릿 줄바꿈 app.set('views', './views_file');//템플릿 폴더 위치 표시 app.set('view engine', 'jade');//템플릿 엔진을 jade로 명시함 //글작성하기 폼 app.get('/topic/new', function(req, res){ res.render('new'); }); //폼에서 작성한 것을 여기서 받음 app.post('/topic', function(req, res){..

Node.js 생활코딩 정리 - POST방식을 이용한 정보의 전달

POST 방식을 이용한 정보의 전달 app.js 파일 추가후 //POST를 위한 예제 app.get('/form', function(req, res){ res.render('form'); }); app.get('/form_receiver', function(req, res){ var title = req.query.title; var description = req.query.description; res.send(title+','+description); }); form.jade 파일 doctype html html head meta(charset='utf-8') body form(action='/form_receiver' method='post') p input(type='text' name='tit..

Node.js 생활코딩 정리 - Express프레임워크 템플릿 엔진(Jade 또는 pug) 사용 방법

왼쪽화면을 오른쪽의 소스로 만들수 있는 것이 템플릿 엔진이다. (즉 for문 사용가능) 이제 jade가 pug으로 이름이 바뀜 var express = require('express'); var app = express(); app.locals.pretty = true;//jade에서 자동 줄바꿈해줌 //view engine은 템플릿 엔진이라는 의미 jade와 express를 연결하는 코드임 app.set('view engine', 'jade'); app.set('views', './views');//views라는 폴더를 만들고 jade파일을 여기에 넣어야함 app.use(express.static('public'));//public 폴더를 정적으로 변환 //템플릿 엔진을 쓰면 send가 아닌 rende..

Node.js 생활코딩 정리 – Express 프레임워크 동적방식과 정적방식 차이

1. 정적인 파일은 내용을 변경하면 바로 반영된다. 2. 동적인 파일은 내용을 변경하면 서버를 껐다가 다시 켜야 한다. 하지만 동적으로 하면 for문을 써서 쉽게 반복되는 구문을 만들 수 있다. app.js var express = require('express'); var app = express(); app.use(express.static('public'));//public 폴더를 정적으로 변환 app.get('/', function(req, res){//'/'은 홈으로 접속한 것을 의미 res.send('Hello world'); });//사용자가 GET방식으로 웹서버에 접속할 때 app.get('/dynamic', function(req, res){ var lis = ''; for(var i=0..

Node.js 생활코딩 정리 – Express 프레임워크 정적 파일을 서비스하는 법

Express프레임워크-정적 파일을 서비스하는 법 정적인 파일은 변하지 않는 것 다음 라인을 추가하면 정적인 서비스가 된다. public은 디렉터리 명 public이란 디렉터리를 정적인 파일로 하겠다. 다음과 같이 추가 후 var express = require('express'); var app = express(); app.use(express.static('public'));//public 폴더를 정적으로 변환 app.get('/', function(req, res){//'/'은 홈으로 접속한 것을 의미 res.send('Hello world'); });//사용자가 GET방식으로 웹서버에 접속할 때 app.get('/login', function(req, res){ res.send('login pa..

반응형