본문 바로가기

Back-End

(116)
Express.js에서 정적 파일 제공하기 express.static() express의 미들웨어 모듈 이를 이용하면 정적 파일을 직접적으로 제공할 수 있다. 예로 들면, 아래 코드를 작성하면 public이라는 이름의 디렉터리에 포함된 이미지, css 파일 및 js 파일을 url로 제공하게 된다. app.use(express.static('public')); 다음과 예와 같이 /static 경로를 통해서 public 디렉터리에 포함된 파일을 로드할 수 있다. app.use('/static', express.static('public')); http://localhost:3000/css/style.css http://localhost:3000/images/logo.css http://localhost:3000/js/main.js http://loc..
Express.js에서 에러 처리하기 기본 에러 처리 express에서는 자동으로 에러 코드 및 에러 정보를 클라이언트로 응답해준다. 에러 처리 - 방법1 라우터에서 에러가 발생하면, express가 알아서 클라이언트로 500 에러 코드와 에러 메시지를 전달한다. app.get('/example', (req, res) => { throw new Error('에러 발생'); }); 에러 처리 - 방법2 콜백 인수 next를 이용하여 에러 발생 코드와 정보를 전달한다. app.get('/example', (req, res, next) => { next(new Error('에러 발생')); }); 에러 처리 핸들러 미들웨어 함수로 에러 처리 에러 처리 핸들러 미들웨어 함수를 이용하면, 앱에서 발생한 모든 에러를 한군데서 처리할 수 있다. 주의해야..
[Node.js] 라우트 처리하기 app.route() get, post, put과 같은 라우트 메서드를 한 곳에 작성할 수 있다. app.route('/customer') .get((req, res) => { res.send('고객 정보 조회'); }) .post((req, res) => { res.send('신규 고객 추가'); }) .put((req, res) => { res.send('고객 정보 수정'); }) .delete((req, res) => { res.send('고객 정보 삭제'); }); express.Router() 라우트 처리를 여러 개 파일로 분리하여 구현할 수 있다. routes/customer.js const express = require('express'); const router = express.Rout..
Node.js + Express + TypeScript 환경 세팅하기 1) 폴더 생성하기 & 폴더로 이동 2) yarn init 3) yarn add express cors ~~body-parser~~ sequelize typescript cors Express의 미들 웨어 헤더를 변경해주어 cors를 허용하는 방법이 있음 (하지만 CORS 미들웨어를 사용하는 것이 더 간단하고 편함) app.all('/*', function(req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "X-Requested-With"); next(); }); CORS 설정하기 const cors = require('cors'); app.use..
[Nest.js] NestJS가 뭐야?: NodeJS 프레임워크 공부하기 providers services, repositories, factories, helpers 등이 있다. 종속성에 의해 inject(주입)할 수 있다. provider 객체의 생성 및 연결은 enst runtime 시스템에 위임될 수 있다(자동으로 해줌). 컨트롤러는 HTTP 요청을 처리하고, 복잡한 작업은 provider에게 위임을 한다. provider는 module에서 선언하는 일반 javascript class이다. CatsService는 CatsController의 constructor를 통해 주입된다. 여기서 private를 사용하면 선언과 초기화가 동시에 이뤄진다. middleware 애플리케이션에서 공통 처리 담당 인증, 로깅 등을 처리한다 요청과 응답 객체를 변경할 수 있다 요청의 va..
redis란? 보호되어 있는 글입니다.
logger 보호되어 있는 글입니다.
[작성중]elasticsearch putty 이전에 연결하는데에 애먹다가 연결에 첫 성공했을 떄 화면. 3번이나 로그인을 실패했었다고 친절하게 알려준다 (...) tar xfz 압축파일명 tar xfzv 압축파일명 : 압축과정 출력됨 -> 스샷 찍으려고 했는데 tar xfzv에 묻혀서 사라졌음.. 파일들을 files 디렉터리 내로 옮김 폴더명 변경하기 bin, lib logs 확인하기. logs는 현재 없음(실행하지 않았기 때문) 그리고 data라는 폴더도 아직은 없다. elasticsearch 실행하기 다른 터미널을 열고 host를 동일하게 하여 접속하고, curl -XGET localhost:9200 을 입력하여 elasticsearch가 잘 실행되고 있는지 확인한다. (-XGET: 데이터 가져오기) 9200: client와 통신 9300: c..

반응형