본문 바로가기

전체 글45

[nodeJS] Node.JS 서버의 사용량 제한 구현하기 Node.js 서버에서 사용량 제한을 구현하는 것은 보안 및 성능 관리 측면에서 중요합니다. 사용량 제한을 통해 악의적인 요청이나 과도한 부하로부터 서버를 보호하고, 리소스를 효율적으로 관리할 수 있습니다. 1. Express-rate-limit 모듈 설치하기 사용량 제한을 구현하기 위해서는 express-rate-limit 모듈을 설치 필요 Express.js 애플리케이션에서 미들웨어로 사용되며, 요청당 허용되는 최대 요청 수와 시간 간격 등 다양한 설정 옵션 제공 npm install express-rate-limit 2. 기본적인 사용량 제한 설정하기 * windowMs 옵션: 시간 간격을 밀리초 단위로 지정 * max 옵션: 해당 시간 간격 내에 허용되는 최대 요청 수 const express =.. 2023. 8. 30.
[nodeJS] Node.JS 서버에 CORS 허용 설정하기 CORS(Cross-Origin Resource Sharing)는 웹 애플리케이션에서 동일 출처 정책(Same-Origin Policy)을 우회하여 다른 도메인의 리소스에 접근하는 것을 허용하는 정책입니다. 기본적으로 브라우저는 보안상의 이유로 다른 출처의 리소스 요청을 차단합니다. 따라서 서버 측에서 CORS를 활성화하려면 특정 도메인이나 출처에서 온 요청을 허용해야 합니다. 1. Express.js를 사용한 기본 서버에서 CORS 설정 모든 출처에 대한 CORS 허용하기 npm install cors const express = require('express'); const cors = require('cors'); const app = express(); // 미들웨어로 CORS 활성화 app.us.. 2023. 8. 29.
[인공지능 그림그리기] 구글 Autodraw 사용하기 그림을 잘 못그리는 사람도 금손으로, 대충 그린 그림도 작품으로 만들어 주는 인공지능 그림그리기 사이트 오토드로우(AutoDraw)에 대해 알려드릴게요. https://www.autodraw.com/ AutoDraw Fast drawing for everyone. AutoDraw pairs machine learning with drawings from talented artists to help you draw stuff fast. www.autodraw.com 1. [Start Drawing] 버튼을 눌러 드로잉 페이지로 이동합니다. 2. 캔버스에 원하는 그림을 그리면 인공지능이 그림을 빠르게 해석하고 완성된 그림의 형태를 만들어줍니다. 3. 원하는 그림을 선택하면 대충 그린 그림이 완성된 그림으로 .. 2023. 8. 19.
[크롬확장프로그램] 반응형 웹 테스트 프로그램 (Responsive Viewer) 반응형 웹을 개발할 때 테스트 할 수 있는 방법을 소개하려고 합니다. Chrome 웹 스토어에서 여러 화면을 한 번에 보여주는 반응형 테스터 (Responsive Viewer)를 설치하겠습니다. https://chrome.google.com/webstore/detail/responsive-viewer/inmopeiepgfljkpkidclfgbgbmfcennb 반응형 테스터 (Responsive Viewer) 확장 프로그램 설치하기 1. Chrome 웹 스토어로 이동하여 우측 상단 검색창에 "Responsive Viewer"를 입력하고 검색합니다. 2. Responsive Viewer 확장 프로그램 카드를 찾아 "확장 프로그램에 추가" 버튼을 클릭합니다. 3. 추가할 경우 Chrome에 저장되는 권한을 확.. 2023. 8. 10.
[GitHub] 마크다운 Note 구문 변경 GitHub 마크다운 Note 구문이 바뀌었다고 합니다. https://github.com/orgs/community/discussions/16925 [Markdown] An option to highlight a "Note" and "Warning" using blockquote (Beta) · community · Discussion #16925 Alerts are an extension of Markdown used to emphasize critical information. On GitHub, they are displayed with distinctive colors and icons to indicate the importance of the content. An example of ... .. 2023. 8. 9.
[nodeJS] Node.JS와 mongoDB 연동 방법 MongoDB 서버를 이미 설치하고 실행한 경우를 전제로 작업 진행 1. MongoDB 패키지 설치 npm install mongodb 2. MongoDB 연결 생성 mongodb 패키지를 import하고, 연결 구성 정보 (username, password, hostname, port, database 이름)를 지정 MongoClient 객체를 만든 다음, connect() 함수를 호출하고 연결 URL과 구성 옵션을 전달하여 MongoDB 서버에 연결 const { MongoClient } = require("mongodb"); const uri = "mongodb+srv://username:password@cluster.mongodb.net/database"; const client = new Mon.. 2023. 8. 8.
[nodeJS] Node.JS와 mySQL 연동 방법 MySQL 서버를 이미 설치하고 실행한 경우를 전제로 작업 진행 1. MySQL 패키지 설치 npm install mysql 2. MySQL 연결 생성 mysql 패키지를 import 후 연결을 설정할 객체와 연결 정보(호스트, 사용자, 비밀번호, 데이터베이스 이름 등) 입력하고, connect() 메소드를 사용하여 MySQL 서버에 연결 const mysql = require("mysql"); const connection = mysql.createConnection({ host: "localhost", user: "your_username", password: "your_password", database: "your_database", }); connection.connect((error) => {.. 2023. 8. 7.
[nodeJS] 에러 및 예외 처리 방법 1. Try-Catch 구문 try 블록에서 예외가 발생하면 즉시 catch 블록으로 이동하여 예외를 처리 function syncFunction() { // 예외 발생 가능한 코드 throw new Error("Error occurred"); } try { syncFunction(); } catch (error) { console.error("Catch block handling the error:", error); } 2. Error-first Callback (오류 우선 콜백) Node.js에서 콜백 함수의 첫 번째 매개변수는 오류고 나머지 매개변수는 결과 데이터 const fs = require("fs"); fs.readFile("non_file.txt", "utf8", (error, data) .. 2023. 8. 6.
[크롬확장프로그램] 크롬을 열 때마자 개발 정보 받는 방법 (daily.dev) 크롬 브라우저를 실행하자마자 개발자를 위한 정보를 받을 수 있는 방법을 소개하려고 합니다. Chrome 웹 스토어에서 매일 최신 개발 정보를 제공하는 데일리데브(daily.dev) 확장 프로그램을 설치하겠습니다. https://chrome.google.com/webstore/detail/dailydev-the-homepage-dev/jlmpjdjjbgclbocgajdjefcidcncaied daily.dev | The homepage developers deserve Get one personalized feed for all the knowledge you need as a developer. chrome.google.com 데일리데브(daily.dev) 확장 프로그램 설치하기 1. Chrome 웹 스.. 2023. 7. 11.