전체 글
-
MongoDB셋팅Node.js,MongoDB 2022. 3. 31. 13:12
저번 시간을 간략하게 복습해보면 1. 서버로 데이터 전송할 수 있는 UI를 만들고, 2. 서버에서 원하는대로 정보를 처리해주면 된다. 이렇게 두가지를 배웠다. 이제 유저가 보낸 데이터를 저장하는 방법을 배워보자. DB의 종류로 1. 관계형 (엑셀처럼 칸이 나뉘어 있다) -MySQL, MariaDB, Oracle, MS SQL Server등이 있다. 데이터 이름 달고, 실제 데이터를 기입한다. 하지만 3차원을 담진 못한다. 그래서 보통 다른표를 만들어 작성한다. 그리고 SQL이라는 언어를 사용해야 한다. 2. NoSQL (SQL언어 사용 싫을 때) -Dynamo, Oracle NoSQL, MongoDB, Redis, Cassandra등이 있다. Object자료형으로 입출력이 가능하다. 여기서 MongoDB..
-
REST APINode.js,MongoDB 2022. 3. 31. 10:37
서버를 만들 때 REST하게 API를 짜는게 좋다는 말이 나온다. 우선 API는 Application Programming InterFace로 서버와 고객간의 소통방법을 뜻한다. 즉, 어떻게 소통할 지 소통 규약을 뜻한다. 이 API들을 어떤 식으로 만들지가 REST API이다. REST원칙 6개가 있다. 1. Uniform interface (간결하며, 형식이 일관적이고 URL이 예측가능해야함) -하나의 자료는 하나의 URL로 -URL 하나를 알면 둘을 알 수 있어야 함 - 요청과 응답은 정보가 충분히 들어있어야 함 2. Client-Server 역할구분 (관계를 명확히 해라) -브라우저는 요청만 할 뿐 -서버는 응답만 할 뿐 3. Stateless -고객들의 요청1과 요청2는 의존성이 없어야함 (각각..
-
POST요청(form)Node.js,MongoDB 2022. 3. 31. 09:58
버튼을 누르면 form에 입력한 제목과 날짜를 서버로 전달해보자. 그럴려면 form 에 들어가야하는 요소가 있는데, method는 정보를 어떤 형태로 전달할건지 정한다.(GET,POST있음) action은 경로를 설정한다. 즉, /add경로로 POST요청을 한다. 이제 server.js에 작성해보자. //어떤 사람이 /add경로로 POST요청을하면... //??를 해주세요 app.post('/add', function(요청, 응답){ 응답.send('전송완료') }); 이렇게 적어주고, form태그에 내용을 입력하고 버튼을 누르면 화면에 전송완료 글씨가 생긴다. 그러면 이때, input에 적은 정보는 어디로간걸까? 정보들은 요청이란 파라미터에 저장된다. 근데 쉽게 꺼내쓰려면 body-parser라는 라이..
-
기초적인 GET요청Node.js,MongoDB 2022. 3. 30. 15:27
const express = require('express');//설치한 라이브러리 첨부 const app = express();//라이브러리로 객채를 만듬 //.listen을 쓰면 서버를 열 수 있음.listen(서버띄울 포트번호, 띄운 후 실행할 코드) app.listen(8080, function(){//8080port에 서버 띄워주세요 console.log('listening on 8080') });//8080port로 웹서버를 열고, 잘 열리면 listening on 8080을 출력해주세요 이 세개는 서버를 띄우기 위한 기본 셋팅이다.(express라이브러리) //누군가가 /pet (url)로 방문을 하면.. //pet관련된 안내문을 띄워주자 app.get('/pet', function(요청, ..
-
express라이브러리Node.js,MongoDB 2022. 3. 30. 13:39
express라이브러리를 설치해 서버를 만들어보자 먼저, npm init을 입력해서 셋팅을 해야한다. npm은 라이브러리를 설치하기 위한 도구이다. 라이브러리를 설치했는기 기록하면 좋을 것 같아서, package.json에 기록하는데, npm init을 치면 package.json을 만들어준다. npm init을 하고 엔터를 치다가 entry point에서 내가 만들 파일이름만 잘 적어주면 된다. server.js를 입력하고 엔터를 쳤다. 그 다음, npm install express를 입력하면 express라이브러리 설치가 완료된다. 그러면 package.json에 아래처럼 express라이브러리의 버젼이 기록된다.
-
node.js란?Node.js,MongoDB 2022. 3. 30. 02:17
대부분 node.js를 자바스크립트의 런타임이라고 소개한다. 노드js는 크롬의 자바스크립트 해석 엔진인 V8이 너무 좋아서 이것을 바탕으로 만들어낸 것이다. 즉, 자바스크립트를 브라우저 내에서 말고도 다른 환경에서도 실행할 수 있게 도와준다. 일종의 실행창, 실행환경이 된다. 그리고 서버까지 만들 수 있다. 왜냐? Non-blocking I/O때문에 사람들이 서버를 node.js로 만들기 시작했다. Non-blocking I/O는 처리방식을 뜻한다. 예를 들면, CGV영화 티켓 예매를 할 때 순차적으로 한 손님 받고 티켓주고가 아니라, 일단 A1장 B1장 A200장 A1장 이렇게 모든 손님의 요청을 듣고, 가장 빨리 처리가 되는 요청을 처리해서 보내준다. 즉, 중간에 어려운 작업을 만나도 그걸 처리할 때..
-
Server란?Node.js,MongoDB 2022. 3. 29. 23:30
서버란 우리가 요구하면 가져다주는 것을 의미한다. 즉, 요청을 받으면 요청한 내용을 보내주는 프로그램이다. 예를 들어보면, 네이버웹툰 서버개발자는 어떤 사람이 comic.naver.com으로 접속하면 네이버웹툰 메인 html파일을 전송해주셈 이렇게 짜게 될 것이다. 여기서 요청에는 HTTP요청이란게 있는데, 크게 읽기, 쓰기, 수정, 삭제 4개 방식이 있다. 먼저, 읽기(GET)는 나 이런 페이지 읽고싶어 라고 읽기요청을 하는 것이고, 다음은, 쓰기(POST)는 무언가 생성해주세요 라고 생성요청을 하는 것이다.(댓글작성 블로그포스트작성 등등) 이번엔, 수정(PUT)는 수정해주세요. 삭제(DELETE)는 삭제해주세요가 된다. 우리가 앞으로 짤 코드를 간단하게 보면 어떤 사람이 /list라는 페이지를 GET..
-
Node+Express 와 React연동하기React 2022. 3. 28. 17:12
우선 서버가 하는일은 누가 사이트에 접속하면 index.html을 보내주세요. 이렇게 html을 전송하는 기계다. 리액트는 html파일을 예쁘게 만드는 도구다. 리액트로 개발하면 html하나에 js로 여러 페이지를 갈아끼우는 구조인데, 이걸 누가 메인페이지에 접속했을 때 보내주면 연동하는 셋팅이 끝난다. 그리고 server.js라는 파일을 새로 만들어 아래의 내용을 적어주었다. 먼저, 서버를 띄우기위한 필수요소만 적으면 const express = require('express'); const path = require('path'); const app = express(); const http = require('http').createServer(app); http.listen(8080, functi..