부제: 비동기 호출 시 stacktrace가 유실되는 문제. javascript async stacktrace has lost Node.js는 single-thread 기반 비동기 방식이다. 그래서 나는 Node.js로 서버 애플리케이션을 개발할 때 Javascript가 ES6 이후로 지원하는 promise, async, await를 많이 사용한다. 나처럼 개발하는 사람들은 한 번쯤 직면 했을 문제에 대해 다뤄보려고 한다. 그건 바로.. 비동기 호출 시 Error의 stacktrace가 사라지는 현상 나는 서론을 쓰는데 재능이 없으니 바로 예제를 보여주겠다. 1. stacktrace가 없어지는 상황async function functionOne() { throw new Error('Error here p..
부제: Node.js Nosql 연동법. Node.js의 mongodb모듈을 활용하여 mongodb를 연동하는 도중 라는 오류를 마주쳤다. 한참을 헤맨 끝에 간단히 해결되었지만, 나같은 고민을 하는 사람들이 더 쉽게 고민을 해결했으면 하는 마음에 삽질로그를 남긴다. 먼저, 내가 간단하게 만들어본 프로그램은 화면에서 id와 password를 입력받아 DB에 존재하는지 검증하고, 로그인 성공여부를 보여주는 기능을 한다. db연동은 아래와 같이 했다. 먼저 DB연결하는 function이다. // // 기본 모듈 선언 및 미들웨어 선언 생략 var MongoClient = require('mongodb').MongoClient; var db; // 연결 받아올 변수(중요) function connectDB() ..