Programming/javascript
-
[NodeJS] REST APIProgramming/javascript 2020. 6. 23. 16:31
요청 - HTTP Method 서버 자원에 대한 행동을 동사로 표현 GET : 자원 조회 POST: 자원 생성 PUT: 자원 갱신 DELETE: 자원 삭제 ⇒ 익스프레스 어플리케이션의 메소드로 구현되어 있다! 사용자 요청 curl -X POST 'localhost:3000/users' 요청에 대한 라우팅 설정 const express = require('express'); const app = express(); app.get('/users', function(req, res){ res.send('user list'); }); app.post('/users', function(req, res){ // 유저를 만들고, 만든 유저를 응답 res.send('만든유저'); }); app.listen(3000, ..
-
[NodeJS] package.json 으로 패키지 관리하기Programming/javascript 2020. 6. 21. 15:21
왜 package.json 을 사용하는가 npm install 로 패키지를 설치하게 되면, node_modules 폴더에 차곡차곡 추가가 된다. 이렇게 개발을 하다가, git 으로 소스코드 관리를 하게된다면?(혹은 다른 팀원과 공유를 해야한다면) 용량이 큰 node_modules 에 있는 파일들또한 레포에 넣으면, 비효율적일 것! 그래서 나오게 된것이 패키지들만 관리해주는 파일! 프로젝트에 package.json 파일 설정하기 npm init // package.json 파일 생성 npm install express --save // --save 키워드를 붙여서 package.json 에 패키지를 저장한다! -> 성공적으로 패키지가 설치되었다면, package.json 파일의 "dependencies" ..
-
[Promise] 비동기 처리Programming/javascript 2020. 6. 18. 23:08
Promise 비동기 처리를 도와주는 javascript 오브젝트. 콜백지옥 탈출을 도와준다. RxSwift 의 Stream 처럼, 값의 흐름을 제어가 가능 State 상태. 프로세스가 성공했는지, 실패했는지 pending(수행중) -------> fulfilled(성공적으로 오퍼레이션 끝냄) / rejeacted(네트워크에 문제가 생김) 프로듀서 정보제공 // 프로듀서 const promise = new Promise((resolve, reject) => { // 비동기 처리 : 네트워크 처리, 파일읽기등 시간이 걸리는 작업 console.log("resolve running...."); setTimeout(() => { // resolve('success'); // 성공적으로 처리 완료시, resol..
-
[NodeJS] 미들웨어 - ExpressJSProgramming/javascript 2020. 6. 9. 01:01
미들웨어란? 함수들의 연속으로 이루어져 있다. ExpressJS 에 서버 기능을 추가할때 사용. ExpressJS NodeJS 로 만들어진 프레임 워크 어플리케이션 : 익스프레스 인스턴스 미들웨어 : 부가기능을 추가 가능 라우팅: 클라이언트 요청주소에 대한 응답을 관리 요청객체(request) 응답객체(response) log 를 찍는 미들웨어 만들기 const express = require('express'); // app: 익스프레스 인스턴스. 서버에 필요한 기능인 미들웨어를 여기에 추가 const app = express(); /** * 인터페이스가 정해져 있다: (request, response, next) * * 반드시 next를 함수 마지막에 호출시켜 줘야 한다. * 클라이언트에서 요청을 보..
-
[NodeJS] hello world!Programming/javascript 2020. 6. 8. 00:16
NodeJS 에서 로컬서버 열어 통신해 보기 /** * * nodeJS 시작하기 * https://nodejs.org/ko/docs/guides/getting-started-guide/ * * * 터미널 명령어 * curl -X GET 'localhost:3000' // 서버에 요청을 보냄 */ // http 모듈을 가져옴 const http = require('http'); // 호스트 네임: 서버의 주소 const hostname = '127.0.0.1'; // 클라이언트와 통신할 포트 설정 const port = 3000; // req: request 객체(사용자 요청 정보를 담음) // res: response 객체 const server = http.createServer((req, res) =..