본문 바로가기
728x90
반응형
SMALL

공부단24

[Node.js] 노드제이에스 - 바디파서 미들웨어 Do it! Node.js 프로그래밍 입문 공부단 6일차 입니다. 바디파서 미들웨어 바디파서 미들웨어는 서버로 요청을 보낼 때 요청 본문에 담긴 것을 파싱하는 미들웨어 입니다. 파싱이란 요청할 때 전송된 자료를 프로그램에서 사용할 수 있는 형식으로 변환하는 것을 말합니다. 바디파서 함수 함수 설명 .json JSON 형식의 본문을 파싱 .urlencoded URL로 인코딩된 본문을 파싱 .raw 가공되지 않은 바이너리 자료를 파싱 .text 텍스트 형식의 본문을 파싱 익스프레스 4.16.0 버전부터는 바디파서 함수 중 일부가 익스프레스 자체에 포함되어서 바디파서 모듈을 따로 설치하지 않아도 됩니다. JSON형식이나 urlencoded형식을 처리하겠다면 다음과 같이 익스프레스 내장함수를 사용하면 됩니다. .. 2024. 2. 8.
[Node.js] 노드제이에스 - 노드의 비동기 패턴 Do it! Node.js 프로그래밍 입문 공부단 4일차 입니다. 프라미스 콜백함수을 계속 사용하다보면 콜백지옥에 빠집니다. 그래서 등장한게 Promise입니다. 노드 모듈에는 프라미스를 반환하는 함수가 따로 있습니다. 프라미스를 실행하고 처리한 결과가 성공이면 then(), 실패하면 catch(), 성공과 실패에 관계가 없을 때는 finally()를 사용합니다. (then()이나 catch()는 반환값이 프라미스이므로 프라미스를 계속 연결해서 사용할 수 있는데 이것을 프라미스 체이닝이라고 합니다.) const fs = require("fs").promises fs.readdir("./05") .then(result => console.log(result)) .catch(err => console.log.. 2024. 2. 6.
[Node.js] 노드제이에스 - 요청 객체와 응답 객체 Do it! Node.js 프로그래밍 입문 공부단 3일차 입니다. 요청 객체 const server = http.createServer((req, res) => { console.log(req) // 요청 객체를 알 수 있다 }) 응답 객체 응답 객체는 헤더와 본문으로 구성되므로 헤더와 본문을 만들어야 합니다. 그리고 응답이 끝난 후에는 응답을 종료해야 합니다. 응답 헤더 만들기 헤더를 만들 때 서버의 자료가 JSON인지 text인지, 헤더는 어떤 유형의 자료를 처리하는지, 서버의 상태는 어떠한지 알려주기도 합니다. 헤더를 만들 때는 기본적으로 setHeader()를 사용하지만 상태 코드를 헤더에 함께 기록하려면 writeHead()를 사용합니다. res.setHeader(이름, 값) res.setHea.. 2024. 2. 5.
[Node.js] 노드제이에스 - http 모듈로 서버 만들기 Do it! Node.js 프로그래밍 입문 공부단 3일차 입니다. 서버 만들기 서버를 만드는 함수 - createServer() 서버를 만들 때는 http 모듈을 가져온 후 createServer()를 사용합니다. createServer([옵션], [콜백]) const http = require("http") const fs = require("fs") const server = http.createServer((req, res) => { console.log("요청발생") }) 서버를 실행하는 함수 - listen() 서버 실행하는 함수입니다. listen(포트[, 호스트][, 콜백]) server.listen(3000, () => { console.log("3000번 포트에서 서버 실행") }) 2024. 2. 5.
[Node.js] 노드제이에스 - HTTP Do it! Node.js 프로그래밍 입문 공부단 3일차 입니다. 클라이언트와 서버 간에 미리 약속한 규칙을 HTTP 프로토콜이라고 합니다. HTTP 프로토콜 클라이언트에서 서버로 자료를 요청하는 것은 http요청(http request), 서버에서 응답해 클라이언트로 자료를 보내는 것은 http응답(http response)이라고 합니다. 이렇게 요청과 응답을 통해 메시지를 주고 받는데 이 메시지에는 여러 정보가 포함되어 있습니다. 클라이언트가 서버로 보내는 요청 메시지는 요청 헤더와 요청 본문으로 구성됩니다. 서버에서 클라이언트로 보내는 응답 메시지도 응답 헤더와 응답 본문으로 구성됩니다. 중요한 헤더 정보 요청 URL 서버에게 어떤 정보를 보내달라고 요구하는 URL을 요청 URL이라고 합니다. 요청.. 2024. 2. 5.
[Node.js] 노드제이에스 - FS 모듈. 버퍼와 스트림 Do it! Node.js 프로그래밍 입문 공부단 2일차 입니다. 버퍼와 스트림 버퍼와 스트림은 파일을 읽거나 쓸 때 한 덩어리로 처리하지 않고 작은 단위로 나눠서 시간을 절약하는 방법입니다. 버퍼 컴퓨터 공학에서 버퍼는 임시 데이터를 저장하는 물리적인 메모리 공간을 가리킵니다. 파일을 읽어 올 때는 전체 내용을 한꺼번에 다 가져오지 않고 한번에 버퍼 하나 크기 만큼만 가져오고, 버퍼가 가득차면 그 내용을 전달해줍니다. 노드의 버퍼에 내용이 이진값으로 저장됩니다. (노드의 버퍼 크기는 고정되어 있습니다.) 스트림 스트림이란 한 곳에서 다른 곳으로 데이터가 이동하는 것, 즉 데이터의 흐름을 가리킵니다. 백엔드 프로그래밍에서 스트림은 서버에서 클라이언트로 혹은 클라이언트에서 서버로 데이터를 보낼 때 사용하는.. 2024. 2. 4.
[Node.js] 노드제이에스 - 노드의 모듈 Do it! Node.js 프로그래밍 입문 공부단 1일차 입니다. 모듈이란? 프로그램을 만들 때에는 최대한 작은 기능 단위로 쪼개서 각 기능을 하나씩 해결하는 방식을 가장 많이 사용합니다. 이렇게 기능별로 만들어 놓은 함수를 모듈이라고 합니다. CommonJS 모듈 시스템과 ES모듈 시스템 require()를 통해 모듈을 가져오는 방식을 CommonJS 모듈 시스템이고 import 변수/함수명 from '모듈파일' 형태로 가져오는 방식이 ES모듈 시스템입니다. 하위 버전과의 호환을 위해 CommonJS 모듈을 사용할 수 있고 최신 문법이나 타입스크립트를 사용한다면 ES모듈 시스템을 사용합니다. // 모듈 만들고 내보내기 const user1 = "Jun" const user2 = "Lim" const u.. 2024. 2. 2.
[Node.js] 노드제이에스 - 자바스크립트 기초 문법과 모듈 Do it! Node.js 프로그래밍 입문 공부단 2일차 입니다. 자바스크립트 기초 문법 템플릿 리터럴 function greeting(name) { // name: 매개변수 console.log(`${name}님 안녕하세요`) // 템플릿 리터럴 : `` } greeting("Jun") // "Jun" : 인수 기본 함수 function 함수명 { ... } function 함수명(매개변수) { ... } 인수(아규먼트) : 함수를 호출할 때 넘겨주는 변수 값 매개변수 : 함수를 선언할 때의 변수 인자 : 매개변수 + 인수 함수의 표현식 const hello = (name) => { console.log(`${name}님 안녕하세요`) } hello("Jun") 함수를 변수에 할당해서 식처럼 사용하는 .. 2024. 2. 2.
[Node.js] 노드제이에스 - 백엔드 개발 Do it! Node.js 프로그래밍 입문 공부단 1일차 입니다. 백엔드 개발 인터넷에서 정보를 주고받을 때 정보를 요청하는 컴퓨터를 클라이언트, 정보를 제공하는 컴퓨터를 서버라고 합니다. 서버를 만든다는 것은 서버에서 실행할 프로그램을 만든다는 의미입니다. 서버 쪽을 개발하는 것을 백엔드 개발이라고 합니다. HTTP프로토콜 클라이언트로부터 주문 정보를 받아 서버로 넘기거나 주문에 성공했다고 서버에서 클라이언트 쪽으로 인터넷을 통해 알려주는데 이때 미리 약속된 규칙을 따르는데 이것을 HTTP프로토콜이라고 합니다. 노드 vscode 설치링크 https://seong-jun.tistory.com/entry/Visual-Studio-Code-%EB%8B%A4%EC%9A%B4%EB%B0%A9%EB%B2%95 V.. 2024. 2. 1.
728x90
반응형
LIST