NodeJS란? 2009년 라이언 달이 발표한 Node JS는 구글 V8엔진으로 빌드된 자바스크립트 런타임 환경입니다. NodeJS는 단순 런타임 환경! 입니다. 간혹 NodeJS를 JS로 백엔드 언어를 사용 할 수 있게 만들어주는 라이브러리나 프레임워크 정도로 생각하는 사람이 많습니다. - 저도 그랬고.. NodeJS는 브라우저의 자바스크립트 엔진에서만 동작하던 자바스크립트를 브라우저 외에 환경에서도 동작할 수 있도록 자바스크립트 엔진을 브라우저에서 독립시킨 자바스크립트 실행 환경입니다. 독립적인 모듈, 파일 시스템, HTTP등 많은 빌트인 API를 제공합니다. Node.js 는 이벤트 기반의 논블로킹 I/O 모델을 사용해 가볍고 효율적입니다. Node.js의 패키지 생태계인 npm은 세계에서 가장 큰..
자바스크립트 엔진 자바스크립트 코드를 해석하고 실행시켜주는 것이 자바스크립트 엔진이고, 가능한 짧은 시간내에 최적화된 코드를 생성해내는것 이 목표입니다. 즉, 자바스크립트 엔진은 자바스크립트 코드를 실행하는 프로그램 혹은 인터프리터를 말합니다. 여러 목적으로 사용 될 수 있지만 보통 웹 브라우저를 위해 사용됩니다. V8엔진은 오픈소스로 구글에서 개발했습니다. C++로 작성되었고, 구글 크롬과 Node.JS에서 사용됩니다. 과거 느린 엔진에 비해 V8엔진으로 인해 클라이언트에서도 빠른 속도로 로직을 수행 할 수 있게되어 많은 로직들을 클라이언트단에서 작성할 수 있게 되었고 이는 프론트엔드 영역이 주목받는 계기가 되었습니다. 출처: https://hceaan.tistory.com/79
REST API란? REST 와 API의 합성어입니다. REST는 통신 체계의 스타일을 규정한 아키텍처입니다. Restful API란? REST 통신 체계 스타일을 준수한 API입니다. myRestBack.js const http = require("http"); const fs = require("fs").promises; const users = {}; // 데이터 저장용 http .createServer(async (req, res) => { try { if (req.method === "GET") { if (req.url === "/") { const data = await fs.readFile("./myRest.html"); // 메인주소일때는 myRest.html 즉 기본이 되는 메인 html..
Server.js const http = require('http'); // http 모듈 생성 http.createServer((req, res) => { // http 서버 생성 res.write('Hello server!') // html태그 전송 res.end('Hello hanamDeveloper!') // 서버 종료와 동시에 html태그 전송 }).listen(8080, () => { // 8080 port로 생성 console.log('포트 8080에서 서버 대기 중입니다.') }) 이런식으로 코드를 구성해도 서버는 잘 구동되지만 html태그를 직접 하면 코드의 줄도 길어질뿐만아니라 행동에도 제약이 생긴다. 그래서 fs객체를 이용해서 파일을 읽어서 코드를 구성한다. 우선 html파일을 만들어..
HTTP란? HTTP란 (HyperText Transfer Protocol)의 약자이다. 클라이언트와 서버가 서로 대화 (응답과 요청) 을 하기 위해서는 하나의 규약을 통해서 소통을 해야한다. 그렇게 나온것이 HTTP서버이다. const http = require('http'); // http 모듈 생성 http.createServer((req, res) => { // http 서버 생성 res.write('Hello server!') // html태그 전송 res.end('Hello hanamDeveloper!') // 서버 종료와 동시에 html태그 전송 }).listen(8080, () => { // 8080 port로 생성 console.log('포트 8080에서 서버 대기 중입니다.') }) 우..