본문 바로가기

서버 인프라, 백엔드/Express3

express: 413 payload too large 에러 해결하기 얼마 전 회사에서 express로 백엔드 개발을 하다가 프론트엔드의 요청에 대해서 413 에러가 발생하였습니다. 이에 대한 해결 방법을 간단하게 공유해보도록 하겠습니다. 문제점 먼저 알아볼 내용은 413 에러가 어떤 에러인지 파악하는 것이었습니다. HTTP 상태 코드에서 413 상태 코드는 Payload Too Large 상태를 의미하는 것으로 요청 Entity가 서버에 정의된 제한보다 크다는 것을 의미합니다. (Request Entity Too Large라는 의미이기도 합니다.) 즉 request 크기가 서버에서 제한해놓은 사이즈보다 크다는 것을 나타내는 것입니다. 따라서 해당 제한을 풀어주면 문제는 자연스럽게 해결됩니다. 제가 구축한 Rest API 서비스는 EC2(리눅스)에 express 서버가 띄.. 2022. 6. 2.
express에서 cookie-parser 사용하기 cookie-parser란? 요청된 쿠키를 쉽게 추출할 수 있도록 도와주는 미들웨어 입니다. express의 request(req) 객체에 cookies 속성이 부여됩니다. node의 npm 패키지에 포함되어 npm install cookie-parser --save를 통해 install하여 사용할 수 있습니다. 예제 코드) var express = require('express'); var cookieParser = require('cookie-parser'); var app = express(); app.use(cookieParser()); app.get('/', function(req, res) { console.log('Cookies: ', req.cookies) }) app.listen(8080.. 2019. 5. 7.
express의 middleware란? 개요 미들웨어 함수는 요청 오브젝트(req), 응답 오브젝트 (res), 그리고 애플리케이션의 요청-응답 주기 중 그 다음의 미들웨어 함수에 대한 엑세스 권한을 갖는 함수 입니다. 그 다음의 미들웨어 함수는 일반적으로 next라는 이름의 변수로 표시됩니다. 미들웨어 함수는 다음과 같은 테스크를 수행할 수 있습니다. 모든 코드를 실행 요청 및 응답 오브젝트에 대한 변경을 실행 요청 - 응답 주기를 종료 스택 내의 그 다음 미들웨어를 호출 현재의 미들웨어 함수가 요청-응답 주기를 종료하지 않는 경우에는 next()를 호출하여 그 다음 미들웨어 함수에 제어를 전달해야 합니다. 그렇지 않으면 요청은 정지된 채로 방치됩니다. 예시) Hello World 애플리케이션에 대한 2개의 미들웨어 함수를 사용한 예제 개발.. 2019. 3. 12.