JavaScript BackEnd/Node.js, Express: 71개의 글
Express,정적인 파일을 서비스 하는방법app.use(express.static('디렉터리명'));// 정적인 파일을 모아놓은 (나의 경우 public)디렉토리는 패키지로 선언한 해당 디렉토리(package.json 파일이 있는..)에 위치시키자. // public 디렉토리 안에 router.png 파일과 sample.txt 파일이 있다. app.js 파일을 분석해보자. ============================================================================================ const express =require('express'); // 모듈을 가져오자.var app= express(); //express().get 이런식으로 사용해도 ..
지금 만드는 app.js 파일을 main파일, main애플리케이션, entry 파일, entry 애플리케이션이라고 한다. 프로젝트의 규모가 커지면 여러 개의 파일이 하나의 애플리케이션을 구동하게끔 한다. 가장 최초의 진입점이 되는 파일(어떠한 파일을 실행시켜야만 해당 애플리케이션이 실행될까?)이 entry 파일이다.엔트리파일은 관습적으로 app.js 라는 이름을 가진 js 파일을 만들어 사용한다. const express =require('express'); // 모듈을 가져오자.var app= express(); //express().get 이런식으로 사용해도 되지만! 가독성을 높여주기 위하여 app이라는 변수에 담아주자.app.get('/', function(request, response){ // ..
command창에서 원하는 위치로 들어가서 md use_express 를 입력하여 use_express폴더를 생성해주자.use_express 폴더로 들어가서 nodejs가 기본적으로 제공하는 모듈이 아닌, 외부의 모듈 express를 사용하기 위해 npm을 이용해야한다. 1. 먼저 npm init 으로 해당 디렉토리(use_express)를 패키지로 지정해줘야한다. 해당 디렉토리에 package.json 파일이 생성된다. 이렇게 package.json 파일이 생성된 디렉터리는 npm을 사용하여 패키지로 선언하게 되는것이다. 열어보면 패키지에 대한 정보임을 알 수 있다. 2. npm install express --save (※--save 를 해줄 경우에는 package.json 파일만 있다면 언제든지 자..
// 1. test_server.js const http = require('http');const hostname = '127.0.0.1';const port = 1337; // 서버가 특정 포트:1337을 바라보게끔 설정!// 전체가 비동기적 방식http.createServer((req, res) => {res.writeHead(200, {'Content-type': 'text/plain'});res.end('Hello World');}).listen(port, hostname, () => {console.log(`Server running at http://${hostname}:${port}/`)}); ======================================================..
nodejs 는 싱글스레드로 동작하는 시스템이기 때문에 동기적 방식으로 프로그램 로직을 작성한다면 성능면에서 문제가 될것이다.그 이유는 이러하다. 하나의 로직이 있다고 가정하자.그런데, 그 로직을 동기적 방식으로 처리한다면 100분이 걸린다. 그 로직을 전부 처리할 때까지 마냥 기다리게 되면 비효율적인 프로그램이 될것이다. 따라서 비동기적인 방식으로 로직을 작성해야하는 이유를 반드시 알아야 하고, 또한 콜백함수의 개념을 정확하게 인지하고 있어야 한다. nodejs에서 기본적으로 제공되는 FileSystem 모듈에 대하여 알아보자. const fs = require('fs'); 동기화 방식과 비동기화 방식에 대해 알아보자. 1. 동기화 방식fs.readFileSync(file[,options])var da..
파일에 코드를 작성하여 cmd 창을 open하여 node 파일명.js로 해당 파일을 실행시킬 수 있다. 이 방법 이외에도 마치 크롬 개발도구처럼 cmd 창에서 node라는 명령어를 입력하고 code를 직접 작성하면서 해당 코드를 곧바로 실행 시킬 수 있다. 위에서 callback 함수 >> b,c,d 이다. callback 함수린?function b(){return 0}; > a.sort(function(v1,v2){return v1-v2;}); (※ 함수명을 따로 주지 않을 때, 그 함수를 익명함수라고 한다.)a.sort(function(v1,v2){return v1-v2;});에서는 이것이 callback 함수이다. >> function(v1,v2){return v1-v2;} 좀 더 심도있게 콜백함수..
npm을 이용해서 다른사람이 만든 외부 소프트웨어(모듈)를 자신의 소프트웨어(모듈)로 사용하는 방법을 알아보자.underscorejs.org 로 들어가자. Installation 쪽으로 가면 여러가지 방법을 설치할수있음을 볼 수 있다. 우리는 nodejs를 하고 있으므로 underscorejs.org 사이트에서 installation쪽에 나와있는 node.js로 설치하는 것을알아보자. 1. 먼저 자신이 작업하는 디렉터리를 패키지로 만드는 법을 배워보자. 다른사람의 패키지를 들여오기에 앞서 지금 프로젝트를 진행하고 있는 디렉터리(server_side_javascript)를 패키지로 지정해야할 필요가 있다. cmd창에서 cd C:\Users\Sean Park\dev\js\server_side_javascri..
javascript가 제공하는 모듈 : ex.date, String, Array ..etc...nodejs가 제공하는 모듈: http, os...etc...javascript가 제공하는 모듈과 nodejs가 제공하는 모듈은 다르다.이것들을 여러 방법으로 결합해서 사용할 수 있다는 것을 알아두자. nodejs가 직접 제공하는 모듈 외에 타인의 모듈 혹은 독립적인 소프트웨어를 사용하는 방법에 대해 알아보자.npm이란: node package manager의 약자 - 설치, 삭제, 업그레이드, 의존성관리를 해주는 것이다. 현재는 npm을 nodejs 에서만 사용하는 것이 아니라, nodejs를 사용하여 만들어진 소프트웨어이지만 여느 소프트웨어 프로그램에서도 npm을 이용하여 타인이 만든 소프트웨어를(플러그인,..
1. 모듈(module)이란? module이라고 하는 것은 부품이라고 생각하면 된다. nodejs가 이미 마련해둔 웹 서버 모듈을 우리가 가져다만 쓰는것.코드로 알아보자 !예제코드가 바로 그것이다. const http = require ('http'); 아래에 작성되어있는 로직 즉, 애플리케이션이 작동되기 위해서는 Nodejs에서 미리 마련해둔 http 모듈(부품)이 필요하다. const는 일정한 이란 의미를 가진 constant의 약자이다. varialble var의 경우에는 변수로써 값이 변할 수 있다.그러나 constant const의 경우네는 상수로써 값이 한 번 할당 될 경우 바뀌어서는 안된다. 마치 자바 언어세서 final 과 같은 역할을 한다. const http = require('http..
1. 포트번호에 대하여 이해해보자. 설치되어있는 서버들 (웹서버, 데이터베이스 서버, 게임 서버, 채팅 서버)이 여러개 있을 때 어떻게 웹서버를 실행시킬까? 0~ 65535개의 포트가 있다. 기본적으로 웹 서버는 80번 포트를 리스닝하고 있다. 따라서 사용자가 http://opentutorials.org 라고 입력할 경우 opentutorials.org (ip를 도메인 네임시스템을 사용한것. 알아보기 쉽게) 컴퓨터를 찾아가게 된다.이 때 http://opentutorials.org 에는 기본적으로 :80번이 생략된 것이다. http://블라블라로 들어 갈 경우 해당 컴퓨터의 80번 포트로 자동 연결이 되는 것이다. http://opentutorials.org:1337 을 입력하였을 때는 반응을 하지 않는..