본문 바로가기

Nodejs51

[Node.js] 콜백헬을 해결하기 위한 Promise와 Async/await 알아보기 안녕하세요. 오늘은 콜백헬이 뭔지 알아보고 해결하기 위한 방법인 promis와 Async/await에 대해 알아보겠습니다. 1. 동기 vs 비동기 동기방식은 하난가 끝날 때까지 다음 작업을 수행할 수 없는 방식으로, 데이터의 요청과 결과가 한 자리에서 동시에 일어나는 것입니다. 비동기 방식은 요청과 결과가 한 자리에서 일어나지 않는 방식으로, 요청 후 응답을 기다리지 않고 다른 활동을 합니다. 2. 콜백 (Callback) 함수? 함수가 끝난 뒤 실행되는 함수로, 함수를 만들 때 parameter로 함수를 받아서 사용합니다. 3. 예시 console.log("1 start"); // cb: callback function function login(id, pw, cb) { setTimeout(() => .. 2023. 11. 28.
[Node.js] 특정 확장자 파일만 필터링해서 불러오기 안녕하세요. 지난 시간에 '대상 디렉토리 내의 모든 파일 읽어오기'에 이어서 '특정 확장자 파일 불러오는 방법'에 대해 알려드리겠습니다. 해당 글을 먼저 읽어보시길 권장드립니다. https://stickode.tistory.com/993 1. 파일 만들기 2. index.js const fs = require('fs'); const path = require('path'); files = fs.readdirSync(__dirname); // 디렉토리를 읽어온다 console.log("\Filenames with the .md extension:"); files.forEach(file => { if (path.extname(file) == ".md") // 확장자가 md인 파일만 조회하기 console.l.. 2023. 11. 9.
[Node.js] 대상 디렉토리 내의 모든 파일 읽어오기 안녕하세요. 오늘은 node js에서 대상 디렉토리 내의 모든 파일 읽어와보겠습니다. 1. 모듈 설치 npm install fs fs는 file system으로 node.js환경에서 파일시스템에 접근, 사용할 수 있게 해주는 모듈입니다. 2. 파일 만들기 node js가 설치되어있다고 가정하겠습니다. index.js 파일 내에 아래의 코드를 작성해주세요. 그리고 a.js파일과 b.js파일에는 임의의 코드를 작성해서 넣어주세요. 파일 이름을 불러오는거라 내용물은 상관없습니다. 3. index.js const fs = require("fs"); filenames = fs.readdirSync(__dirname); // 디렉토리를 읽어온다 console.log("\nCurrent directory filena.. 2023. 10. 28.
[Node.js] dotenv을 사용하여 환경변수 설정하기 .env 환경변수 Node.js에서 프로그래밍에 필요한 값들을 서술할 수 있는 .env 환경변수 파일에 대하여 알아보겠습니다. 패키지 설치 .env을 이용하기 위해서는 프로젝트에 dotenv 패키지를 설치해야합니다. npm i dotenv 예제 .env파일을 만들고 내부에 변수를 작성해줍니다. .env 파일 # This is sample .env MESSAGE=hello NUMBER=1234 stickode.js 파일 require('dotenv').config(); console.log(process.env.MESSAGE); 또는 아래처럼 변수로 선언해서 사용할 수도 있습니다. require('dotenv').config(); const { MESSAGE, NUMBER } = process.env; c.. 2023. 10. 19.
[Node.js] axios 활용해서 비동기로 http 통신하기 axios 란 브라우저나 node.js에서 비동기로 http 통신을 하기 위한 도구입니다. 비슷한 라이브러리로 reqeust 등이 있습니다. promise 용법을 사용 가능합니다. 패키지 다운로드 방법은 npm install axios 를 사용하면 할 수 있습니다. get과 post방식이 있습니다. 1.get방식 const axios = require('axios') axios({ method : 'get', url : 'https://www.naver.com/' }).then((res)=>{ console.log(res) }) 네이버로 응답값을 받아보겠습니다. const axios = require('axios') axios({ method : 'get', url : 'http://rembridge.s.. 2023. 10. 8.
[Node.js]JWT 사용자 인증 안녕하세요 이번 시간에는 JWT, JSON Web Token 에 대해서 알아보겠습니다. JWT 란? JWT는 JSON 객체를 사용하여 정보를 안전하게 전달하기 위한 코딩된 토큰입니다. 주로 웹에서 사용자 인증에 사용되며, 서버와 클라이언트 간에 정보를 안전하게 전송하기 위한 수단으로 활용됩니다. Express.js와 ejs 를 사용하여 JWT를 생성, 검증 및 디코드하는 간단한 프로젝트를 만드는 방법을 알아보겠습니다. 먼저 구현을 위해 필요한 패키지 설치를 합니다 npm install express jsonwebtoken body-parser ejs 프로젝트 구조는 다음과 같습니다 /jwt-express-test |-- /views | |-- index.ejs |-- app.js app.js const .. 2023. 10. 5.
[Nodejs] CORS 사용해서 특정 도메인만 접근 허용하기 안녕하세요. 오늘은 웹 개발하다 보면 보게될 오류인 CORS를 해결하기 위해 글을 작성했습니다. CORS(Cross-Origin Resource Sharing)는 웹 브라우저에서 실행되는 웹 애플리케이션에서 다른 도메인에 있는 리소스를 요청할 때 발생하는 보안 정책입니다. CORS를 사용하려면 웹 서버에서 특정 HTTP 헤더를 설정해야 하는데 아래 코드를 통해 알려드릴게요. 우선 서버는 express서버를 사용하니 express와 http, cors를 설치해줄게요. npm install http express cors 그리고 index.js 파일을 작성해보겠습니다. const http = require('http'); const express = require('express'); const app = .. 2023. 9. 29.
[Node.js]Multer를 이용한 다중 이미지 업로드 Node.js에서 파일 업로드를 쉽게 처리하기 위해 multer라는 미들웨어를 사용합니다. 이 글에서는 multer를 사용하여 다중 이미지를 업로드하는 방법을 알아보겠습니다. Multer 란? multer는 Node.js의 미들웨어로서, multipart/form-data를 사용하여 업로드된 파일을 처리하기 위한 라이브러리입니다. 주로 이미지, 동영상 등의 미디어 파일 업로드에 활용되며, Express와 함께 사용하기 적합하게 설계되었습니다. 1. 필요한 패키지 설치 npm install express multer ejs 2. 서버 코드 작성 // 필요한 모듈들을 불러옵니다. const express = require('express'); const multer = require('multer'); co.. 2023. 9. 24.
[Nodejs]Node.js에서 i18n을 사용하여 다국어 지원 하기 보호되어 있는 글 입니다. 2023. 9. 14.