Node.js

    [Node.js] Mysql 시퀄라이즈 요약

    [Node.js] Mysql 시퀄라이즈 요약 시퀄라이즈는 Mysql 작업을 쉽게 할 수 있도록 도와주는 라이브러리입니다. ORM(객체 관계 매핑)으로 분류되는데요. 자바스크립트 객체와 데이터베이스의 릴레이션을 매핑해주는 도구 역할을 합니다. 시퀄라이즈를 사용하는 이유? 자바스크립트 구문을 알아서 SQL로 바꿔줍니다. 따라서 SQL 언어를 직접 사용하지 않아도 자바스크립트만으로 MySQL을 조작할 수 있습니다. 시퀄라이즈 설치express learn-sequelize --view=pug 폴더로 이동해 npm 패키지 설치cd learn-sequelizenpm i 시퀄라이즈에 필요한 패키지 설치 (sequelize, mysql2)npm i sequelize mysql2npm i -g sequelize-cli ..

    [Node.js] 핵심 요약

    1. 파일 속 데이터는 버퍼 형식으로 저장된다. 따라서 이를 읽기 위해서는 toString()을 통해 문자열로 반환시키자. 2. readFile : 파일 읽기 / writeFile : 파일 만들기 3. 동기와 비동기 : 함수가 바로 return 되는지에 따라 나뉨 블로킹과 논블로킹 : 백그라운드 작업 완료 여부에 따라 나뉨 동기와 블로킹, 비동기와 논블로킹이 같이 쓰인다. 4. Port는 프로세스를 구분하기 위함. 사이트 별로 80포트가 base. 그래서 80포트는 따로 url에 써주지 않아도 접속 가능 5. 쿠키는 헤더에 저장한다. 6. HTTP 상태코드 2XX : Success 3XX : Redirection 4XX : Request Error 5XX : Server Error 7. npm outda..

    [Node.js] 6. 파일 업로드

    우리는 블로그나 카페에서 내가 갖고 있는 파일을 업로드할 수 있다. Node.js에서도 이러한 파일 업로드를 만들어 실습해보자 express에서는 기본적으로 파일 업로드에 대해서 지원해주지 않는다. 따라서 이에 해당하는 모듈을 설치해야한다. multer라는 모듈은 우리가 파일 업로드를 할 수 있도록 도와준다. npm을 통해서 설치하자 12345//설치npm install multer --save //app_file.js에 작성var multer = require('multer');cs multer 모듈을 사용하기 위해 app_file.js에 위와 같이 require 문을 작성하도록 한다. 우리가 업로드할 파일을 저장할 uploads 폴더를 하나 만들고, multer로 해당 경로를 아래와 같이 app_fi..

    [Node.js] 5. 웹 애플리케이션 만들기

    이제 지금까지 배운 것을 통해서 Express 프레임워크를 통해 간단한 웹 애플리케이션을 만들어보자. 기존의 app.js에 추가하면 가독성이 떨어지므로, 프로젝트에 새로 app_file.js 파일을 만들어 진행하자. 이번 애플리케이션 실습을 통해 파일 시스템 모듈도 활용할 것이다. 데이터 값을 저장할 data 폴더, html로 나타낼 pug 파일을 저장할 views_file 폴더를 만들자. 이제 app_file.js를 작성해보도록 하자 1234567var express = require('express');var fs = require('fs'); // 파일 시스템 모듈 생성var app = express(); // 애플리케이션 객체 생성 app.listen(3000, function(){ console..

    [Node.js] 4. Express 프레임워크 (get과 post)

    지금까지 진행했던 방식은 get을 이용해 사용자가 데이터를 가져오는 방식이었다. get방식은 사용자의 접속에 의해 애플리케이션이 응답하고, 사용자가 정보를 가져오는 것을 말한다. 이때 쿼리 스트링으로 애플리케이션에 요청하여 정보를 가져오게 된다. 이처럼 get방식은 우리가 서버에 정보를 요청해서 가져오는 것을 말한다. POST 이번에는 post방식에 대해서 알아보자.post 방식은 사용자의 정보를 서버로 전송하는 것을 말한다. 예를 들면, 우리가 홈페이지에서 로그인을 할 때 아이디나 패스워드를 서버로 전송하는 과정이 필요하다. 이럴 때 사용하는 것이 바로 get 방식이 아닌 post방식이다. post 방식을 알아보기 위해 views폴더에 form.jade를 만들자 제목과 내용을 각각 text와 texta..

    [Node.js] 3. Express 프레임워크(템플릿, URL)

    템플릿 엔진 npm 패키지를 통해 jade(현재는 pug로 바뀜)를 설치한다. 1npm install pug --savecs 이제 app.js에 연결시켜줘야 한다. 1app.set('view engine', 'pug');cs 템플릿 pug 파일을 저장시킬 views 폴더를 하나 생성하고, app.js에 경로를 설정한다. 1app.set('views', './views');cs views 폴더에 템플릿 파일을 작성해보자. 우리는 pug를 이용하고 있으므로 temp.pug라고 만든다. temp.pug를 작성하기 전에, app.js에서 이 파일을 불러오도록 만들어야 한다. 12345 app.get('/template', function(req, res){ res.render('temp');}) Colored ..

    [Node.js] 2. Express 프레임워크

    [Node.js] 2. Express 프레임워크 노드보다 더 적은 코드로 많은 일을 해주는 프레임워크들이 존재한다.노드를 이용한 프레임워크 중 하나인 Express에 대해 알아보자 Express 사이트 : http://expressjs.com/ko/starter/installing.html - Express 설치우리 프로젝트 경로에서 npm으로 설치해보자 1npm install express --savecs 간단한 웹 애플리케이션 만들기 해당 예제는 Express 사이트에서 시작히기 메뉴에 'Hello World'를 통해서도 볼 수 있다.app.js라는 파일을 만들고 express를 이용해 코드를 작성해보자지금 할 파일에서는, 앞으로 우리가 만들어갈 프로젝트 내에서 main 파일에 해당하는 내용이다. 1..

    [Node.js] 1. 시작 및 주요개념 정리

    서버 측 자바스크립트와 nodejs 소개 자바스크립트가 생기면서, 웹을 동적으로 변화시키게 되었다. 사용자와 상호작용하게 되는 복합적인 기능들을 사용할 수 있게 되면서 웹에 대한 중요한 발전 계기가 된 것이 바로 자바스크립트! 최초의 자바스크립트에서는, 웹에서만 동작했다. 따라서 당시에는 크게 효용성이 없던 언어였지만, 2004년 구글의 gmail, gmap 서비스에 의해 다른 변화가 일어나기 시작한다. 지금까지 전세계적으로 인기를 끌며 사용되고 있는 이 서비스에서 자바스크립트를 사용한 것이다. 그리고 2008년, 다시한번 구글에서 크롬 브라우저를 개발하기 위한 자바스크립트 V8엔진을 만들었다. 구글은 이걸 오픈 소스로 공개하면서, 앞으로 웹이 아닌 다른 영역에서도 자바스크립트가 들어가게 되는 혁명과도 ..