본문 바로가기

전체 글

[Node.js] 계정관리 서버 프로젝트 3 오늘의 할 일 - 로그 관리 - 예외 처리 1. 로그관리 외부 로깅 라이브러리인 winston을 사용하기 위해 winston 설치 logger.js 작성 const winston = require("winston"); const logger = winston.createLogger({ // 출력 형식 정의 transports: [ new winston.transports.Console(), // 콘솔 출력: 개발 중 디버깅에 사용됨 new winston.transports.File({ filename: "app.log" }), // 파일 출력: 실제 운영 환경에서 로그 관리 ], // 로그 형식 지정 format: winston.format.combine( // combine을 사용하여 여러 형식을 조합.. 더보기
[Node.js] exress 프로젝트 로그 관리 방법 프로젝트에서 로그를 관리하기 위해 로그 관리 방법에 대해서 알아봤다. 로그를 관리하는 방법으로는 로깅 모듈을 만들어서 사용하거나, 이미 만들어진 로깅 라이브러리를 사용하는 방법이 있다. 1. 직접 로그 관리 모듈 만들기 logger.js // logger.js function logRequest(user, method, url) { const log = `${user.email} - ${new Date().toISOString()} - ${method} ${url}`; console.log(log); } module.exports = { logRequest }; 위에서 만든 모듈을 사용하여 미들웨어 만들기 // middleware.js const logger = require('./logger'); //.. 더보기
[GitHub] 사용자 등록 경고메시지 Your name and email address were configured automatically based on your username and hostname. Please check that they are accurate. You can suppress this message by setting them explicitly. Run the following command and follow the instructions in your editor to edit your configuration file: git config --global --edit After doing this, you may fix the identity used for this commit with: git.. 더보기
[Node.js] 계정관리 서버 프로젝트 2 오늘의 할 일 - 공통 응답 모듈 만들기 - 세션관리 모듈 만들기(클라이언트가 요청하는 모든 API(로그인 제외)헤더에 토큰 있는지 검사하는 모듈 만들기) - 파일 업/다운로드 로그인한 사용자 검사 추가 1. 공통 응답 모듈 만들기 function success(status, message, data) { return { success: true, status: status, message: message, data: data, }; } function fail(status, message) { return { success: false, status: status, message: message, }; } module.exports = { success, fail }; 공통으로 들어가던 응답부분을 모듈.. 더보기
[Node.js] 계정관리 서버 프로젝트 1 개발 일정 일자 to do 23.11.14(화) API 만들기 23.11.15(수) - 공통 응답 모듈 만들기 - 파일 업/다운로드 로그인한 사용자 검사 추가 - 세션관리 모듈 만들기(클라이언트가 요청하는 모든 API(로그인 제외)헤더에 토큰 있는지 검사하는 모듈 만들기) 23.11.16(목) - 로그관리: 유저가 어떤 API를 언제 호출했는지 / - 코드 보완: 예외처리, 중복코드 수정 23.11.17(금) - 이메일 중복검사 같은 세세한 부분 체크 - 구글 클라우드 플랫폼 VM 서버 올리기(포트 새로 열기) - 서버올리고 포스트맨 테스트 API 기능 세부기능 method url 계정 추가 항목: 이메일, 비밀번호, 이름, 전화번호 post /api/users 계정 삭제 계정 삭제 delete /api.. 더보기
[Node.js] CommonJS 모듈 1. 모듈 만들기 모듈을 만들 때는 모듈이 될 파일 과 모듈을 불러와서 사용할 파일이 필요함 1) 모듈이 될 파일 var.js - func.js와 index.js 에서 재사용됨 const odd = "홀수입니다."; const even = "짝수입니다."; // module.exports에 변수들을 담은 객체를 대입하여 module.exports = { odd, even, }; 2) 모듈이 되기도하면서 모듈을 불러오는 파일 func.js - var.js를 모듈로 불러오고 자기 자체도 index.js의 모듈이 됨 const { odd, even } = require("./var"); function checkOddOrEven(num) { if (num % 2) { return odd; } return ev.. 더보기
[Node.js] 모듈 1. 모듈이란? 특정한 기능을 하는 함수나 변수들의 집합 모듈은 자체로도 하나의 프로그램이면서 다른 프로그램의 부품으로도 사용할 수 있음 모듈로 만들어두면 여러 프로그램에서 해당 모듈을 재사용할 수 있음 보통 파일 하나가 모듈 하나가 되며, 파일별로 코드를 모듈화할 수 있어 관리하기 편함 2. 모듈의 형식 노드에서는 CommonJS 모듈, ECMAScript 두 가지 형식의 모듈을 사용 1) CommonJS 모듈 표준 자바 스크립트 모듈은 아니지만 널리 쓰이는 모듈(표준이 나오기 이전부터 쓰였기 때문에) https://k-sky.tistory.com/683 더보기
[Node.js] 노드에서 파이썬 파일 구동하기 Node.js 에서 제공해주는 child process를 이용해서 파이썬 파일을 실행 spawn은 Node.js의 child_process 모듈에서 제공하는 함수 중 하나로 새로운 프로세스를 생성하고 해당 프로세스를 다른 프로그램을 실행하는데 사용하는 중요한 메서드 spawn 함수를 사용하면 Node.js에서 다른 프로그램을 실행하고 그 결과를 처리할 수 있음 spawn 함수를 호출하면 새로운 자식 프로세스가 생성되며 이 프로세스는 백그라운드에서 실행됨, 생성된 자식 프로세스와 상호 작용하려면 'childProcess' 객체를 사용할 수 있으며 이 객체는 stdout, tdin stderr 스트림 및 다양한 이벤트를 제공함 spawn 함수의 형식 command: 실행할 프로그램 또는 명령어의 이름, 예를.. 더보기