본문 바로가기
BackEnd/node.js-express

[Todo List Express] CORS ERROR, express.json(), express.urlencoded()

by Chaedie 2023. 3. 4.
728x90

에러: 프론트에서 GET getTodos해도 데이터가 안옴…

res.json({}) 하면 json으로 데이터 가는줄 알았는데, 이것도 미들웨어로 처리를 해줘야 json으로 보낼수있나보다. 강의에선 무지성 따라하다보니까 세세한 부분을 놓치는데 아마 이게 그 encoded: false였나 그거였나?? 찾아봐야겠다.

아래 두 라인 넣어보았는데 안된다. 뭐지 이거 프론트단 문젠가… 프론트단은 이미 다른 백엔드 API사용해서 구현되어 있는거 쓰는거라 최대한 손 안댈려고했는데… 확인해야겠따… 😭

app.use(express.json());
app.use(express.urlencoded({ extended: false }));

아….

확인해보니까 CORS 때문이었다… express에 cors 간단하게 해결하는 문서가 있네..

https://expressjs.com/en/resources/middleware/cors.html

우아 성공 ㅋㅋ 진짜 간단한 ㅋㅋㅋ 별거아닌 ㅋㅋㅋ 통신 성공일 뿐인데 왤케 기분좋지 ㅋㅋ


express.json()

공식 문서 - https://expressjs.com/ko/api.html#express.json

빌트인 미들웨어, JSON 을 파싱해준다.

express.urlencoded()

공식 문서 - https://expressjs.com/ko/api.html#express.urlencoded

빌트인 미들웨어, urlencoded 페이로드를 파싱해준다.extended: false를 하면 내장 querystring모듈을 사용, true는 qs모듈 사용

위 두 미들웨어 모두 바디-파서에 모듈에 내장되어있음

댓글