노드js41 [nodeJS] Node.js로 페이징네이션 활용하기 페이징네이션은 전체 데이터셋을 일정한 크기로 나누어 페이지별로 데이터를 제공하는 방식입니다. 이를 통해 한 번에 모든 데이터를 불러오는 부담을 줄이고, 사용자는 필요한 데이터를 쉽게 탐색할 수 있습니다. 일반적으로 페이지 번호와 페이지당 항목 수를 사용해 특정 페이지의 데이터를 가져옵니다. 1. Node.js 프로젝트 설정하기Express는 웹 서버를 구축하는 데 사용하고, MySQL과 MongoDB 연결을 위해 각각 mysql과 mongoose를 사용mkdir pagination-examplecd pagination-examplenpm init -ynpm install express mysql mongoose 2. MySQL에서 페이징네이션 구현하기1) 데이터베이스 설정간단한 users 테이블을 생성C.. 2024. 5. 23. [nodeJS] Node.js와 redis 연동하기 Redis는 "Remote Dictionary Server"의 약자로, 고성능 키-값 저장소로 널리 사용되는 오픈 소스 인-메모리 데이터 구조 서버입니다. 다양한 데이터 구조를 지원하며, 데이터베이스, 캐시, 메시지 브로커 역할을 할 수 있습니다. Redis는 메모리 내 데이터 저장소로서 빠른 읽기 및 쓰기 작업을 제공하며, 디스크에도 지속적으로 데이터를 저장할 수 있어 재시작 후에도 데이터를 유지할 수 있습니다. 1. Node.js에서 Redis 사용 준비하기Node.js에서 Redis를 사용하기 위해서는 먼저 Redis 서버가 설치되어 있어야 하며, Node.js 애플리케이션에서 Redis 클라이언트를 사용할 수 있도록 redis 패키지도 설치 필요npm install redis 2. Redis 연.. 2024. 5. 7. [nodeJS] Node.js로 자연어 처리하기 자연어 처리(Natural Language Processing, NLP)는 인간의 언어를 컴퓨터가 이해하고 해석할 수 있도록 하는 기술 분야입니다. 이를 통해 컴퓨터는 텍스트나 음성 데이터로부터 의미를 추출하고, 이를 바탕으로 질문에 답하거나, 텍스트를 생성하고, 감정을 분석하는 등 다양한 작업을 수행할 수 있습니다. 자연어 처리는 정보 검색, 감정 분석, 기계 번역, 음성 인식 등 다양한 분야에서 활용되고 있습니다. 1. natural 모듈 설치하기npm install natural 2. 텍스트 분류하기'Natural' 라이브러리의 BayesClassifier 클래스를 사용하여 기본적인 텍스트 분류기를 구현하여 텍스트 데이터를 여러 카테고리로 분류 가능// 긍정적인 문장과 부정적인 문장을 분류하는 분류.. 2024. 5. 3. [nodeJS] nodeJS에서 console.log 사용하지 않고 디버깅하기 Node.js 개발 중 발생하는 다양한 문제를 해결하기 위해 디버깅은 필수적인 과정입니다. 많은 개발자들이 console.log를 사용하여 디버깅을 시도하지만, 프로덕션 환경에서 불필요한 console.log는 성능을 저하시킬 수 있습니다. 1. debug 모듈 설치하기 npm install debug 2. debug 인스턴스 생성하고 로그 출력하기 debug 모듈을 사용하면 개발자는 코드 전체에 로그를 남길 수 있으며, 필요한 로그만 선택적으로 활성화 가능. 디버그 인스턴스를 생성하여 로그 출력 가능 // app.js const debug = require('debug')('app'); // 디버그 인스턴스를 사용하여 로그 출력하기 debug('Hello, %s!', 'world'); 3. 환경 변수 .. 2024. 3. 25. [nodeJS] JWT를 이용한 로그인 시스템 구현하기 JWT(JSON Web Token)는 클라이언트와 서버간에 정보를 안전하게 전달하기 위한 방법입니다. JWT는 상태를 유지하지 않는 Stateless한 특성을 가지고 있어, 확장성 있는 시스템을 구축하는 데 매우 유용합니다. 하지만, JWT는 만료 시간이 있어 주기적으로 갱신해야 합니다. 1. 필요한 모듈 설치하기 npm install express jsonwebtoken body-parser 2. JWT 생성하기 로그인 요청이 들어오면, 서버는 클라이언트에게 JWT를 발급하기 위해 'jsonwebtoken' 모듈의 'sign' 메소드를 사용하여 JWT를 생성 app.post('/login', (req, res) => { const user = { id: 1, username: 'test', }; con.. 2024. 1. 6. [nodeJS] fs 모듈을 이용하여 다중 폴더 생성하기 Node.js에서 파일 시스템을 조작할 수 있는 'fs' 모듈을 이용하여 다중 폴더를 생성하는 방법에 대해 알아보겠습니다. 'fs' 모듈은 Node.js의 내장 모듈로서, 파일을 생성, 읽기, 쓰기, 삭제하는 등의 다양한 기능을 포함하고 있습니다. 1. fs 모듈 불러오기 내장 모듈인 fs를 사용하기 위해 import 구문으로 불러오기 import fs from 'fs'; 2. 다중 폴더 생성하기 fs 모듈의 'mkdir' 함수를 이용하여 폴더를 생성하기 'recursive' 옵션을 true로 설정하면, 한 번에 여러 개의 폴더 생성 가능 fs.mkdir('./folder1/folder2/folder3', { recursive: true }, (err) => { if (err) throw err; con.. 2023. 12. 30. [nodeJS] node 버전 변경하기 (nvm) 다양한 프로젝트를 동시에 진행할 때 nodeJS 버전 때문에 고생하신 적 있으신가요? NVM을 사용하면 그 문제를 해결할 수 있습니다. 1. NVM 설치 Download Now! -> nvm-setup.zip 다운로드 https://github.com/coreybutler/nvm-windows/ GitHub - coreybutler/nvm-windows: A node.js version management utility for Windows. Ironically written in Go. A node.js version management utility for Windows. Ironically written in Go. - GitHub - coreybutler/nvm-windows: A node.js .. 2023. 11. 30. [nodeJS] html-escaper 모듈을 이용하여 HTML 이스케이프 문자 파싱하기 HTML 이스케이프는 HTML 코드에서 특수 문자를 안전하게 처리하거나 보여주기 위해 필요합니다. 웹 페이지의 구조를 파괴할 수 있는 특수 문자를 방지하거나, 사용자가 입력한 데이터를 안전하게 표시할 수 있습니다. 1. html-escaper 모듈 설치 Node.js에서 HTML 이스케이프를 쉽게 다룰 수 있게 해주는 'html-escaper' 모듈 설치 npm install html-escaper 2. html-escaper 모듈 불러오기 import 구문을 이용해 'html-escaper' 모듈 불러오기 import {escape, unescape} from 'html-escaper'; 3. 이스케이프 처리하기 'html-escaper' 모듈의 'escape' 함수를 이용하여 HTML 문자열에서 특수.. 2023. 11. 11. [nodeJS] JWT 인증하기 JWT(JSON Web Token)는 웹 애플리케이션에서 사용자 인증과 권한 부여를 위해 널리 사용되는 토큰 기반 인증 방식입니다. JWT는 서버와 클라이언트 간의 안전한 정보 전달을 가능하게 하며, 토큰 자체에 필요한 정보를 포함하여 사용자 식별 및 권한 확인을 수행합니다. 1. jsonwebtoken 모듈 설치하기 npm install jsonwebtoken 2. JWT 토큰 생성하기 jwt.sign() 함수를 사용하여 토큰 생성 첫 번째 인자로 토큰에 포함될 데이터(payload)를 전달하고, 두 번째 인자로 시크릿 키를 전달 시크릿 키는 서버와 클라이언트 간에 공유되어야 하며, 토큰의 유효성 검사에 사용 const express = require('express'); const jwt = requ.. 2023. 8. 31. 이전 1 2 3 4 5 다음