본문 바로가기

node

(6)
[열한번째] Node.js & MySQL 연동하여 간단한 웹 애플리케이션 사이트 만들기(스압) 10개의 포스팅으로 정말 Node의 기초와 프레임워크 express 기초에 대해 알아봤다.이 기초를 이용하여 관계형 데이터베이스(RDB) 중 가장 보편적으로 사용되고 있는MySQL을 연동시켜서 간단한 애플리케이션을 만들어보자.데이터 베이스 관련 포스팅은 추후 올라갈 예정이다.(본 포스팅은 생활코딩 수업의 내용을 바탕으로 하고 있습니다.) 기본적인 원리는 express로 라우팅을 해주면서 필요한 요소요소에 데이터베이스를 연동하여필요한 정보를 불러오고 사용자로부터 받은 정보를 저장하는 것이다. express 함수를 호출한다.express 함수를 다루기 편하게 app이란 객체로 객체화express 내장 모듈인 fs 모듈도 호출.mysql module 도 호출.mysql.createConnection()을 통해..
[열번째] Node.js 기본 / 클라이언트와 서버의 의사소통 방식 (GET & POST) II Post방식app.post('/form_receiver', function(req,res){ var title = req.body.title; var description = req.body.description; res.send(title+','+description);});res.send에 해당하는 부분이 /form_receiver에 출력될 것을 기대할 수 있다.그런데 에러가 뜬다.TypeError: Cannot read property 'title' of undefinedbody 가 존재하지 않는다고? API를 보니까Contains key-value pairs of data submitted in the request body. By default, it is undefined, and is pop..
[여덟번째] Node.js 기본 / 쿼리 스트링 Application의 기능을 다시 한 번 살펴볼 필요가 있다.입력에 따라서 출력을 하는(input)입력 -> Application -> 출력(output)어떠한 사용자의 조작이 있을 때 다른 것을 보여주는 것을 우린 애플리케이션이라고 한다. 다음과 같은 URL이 있다고 가정하자.http://a.com/topictopic을 URL의 구성요소 중 'path'라고 한다.topic으로 접속을 하게 되면 언제나 똑같은 결과를 보여준다. 경우를 나눠서 다른 결과를 보여주면 좋지 않을까이 때 쿼리 스트링을 이용한다.ex) http://a.com/topic?id=1id 값 1을 전달. 1에 해당하는 결과를 출력.물음표 뒤에 나타나는 것을 "쿼리 스트링"이라고 한다. 하나의 패스에서 다른 아이디값에 따라서 다른 화면을..
[일곱번째] Node.js 기본 / Template Engine, Jade 동적 파일 제공 템플릿 엔진어떠한 기술 '들'을 의미한다. 상품군 많은 훌륭한 템플릿 엔진들이 있지만 우선 Jade에 대해 알아보도록 하자. app.set('view engine','jade');express 와 jade 를 연결하는 코드로view engine 으로 jade를 사용하겠다는 뜻이다. app.set('views','./views')관습적으로 템플릿 파일을 views라고 명명한 폴더에 모아둔다.res.render('upload');이런식으로 views 폴더에 있는 파일을 렌더링 한다.소스코드를 가지고 와서 웹페이지를 만들어내는 것도 일종의 렌더링 Jade 문법을 알기 위해 홈페이지에 접속을 하게 되면 Main페이지에서 딱 두 개의 소스코드 페이지를 제공한다.http://jade-lang.com/doctype ..
[여섯번째] Node.js 기본 / 정적 파일 제공 정적 파일 제공일단, 각 문법적 요소 요소들에 대해서 무조건 알고 넘어가야 겠다는 강박증을 내려놓자.각 코드들을 레고 블럭처럼 생각하고 어떤 것을 하기위해 어떤 것이 필요하다라고패턴화로 기억하자. 정적인 파일이란 한번 만들어지면 변할 일이 없는 계속 똑같은 html문서 같은 것을 말한다.app.use(express.static('public'));.static 메소드는 정적인 파일이 위치할 디렉토리를 지정하는 기능을 갖고 있다.디렉토리 명은 관습적으로 public 이라고 한다.정적인 파일에 대해 변경된 사항에 대해서 노드 애플리케이션을 껐다가 다시 킬 필요 없다. API 문서를 살펴보면이미지, CSS 파일 및 JavaScript 파일과 같은 정적 파일을 제공하려면Express의 기본 제공 미들웨어 함수인..
[프롤로그] Node.js 란 무엇인가? 자바스크립트로 서버를 개발할 수 있다던데?웹의 역사에서부터 천천히 출발해보자.1990년 Tim Berners lee 가 WEB 을 창시했다.이때의 웹은 정적인 체계의 웹이였다.Marc Andreessen 에 의해 Netscape 라는 대중적 웹브라우저가 등장하게 되었고Brendan Eich에 의해 JavaScript 등장하고 웹에 동적인 체계를 탑재하게 되었다.즉, 사용자와 상호작용이 가능해졌다는 이야기이다. WEB이라는 울타리안에 갇혀있던 JavaScript,대중성을 중시해서 천대 받던 JavaScript가 재조명 받게되는 계기가 있었다.2004 년, Gmail 등장이다.순수한 웹기술(HTML, JavaScript 등)을 통해서 만들었음에도 불구하고뛰어난 성능을 보인 것이다.이어서 GMap도 순수 웹기..