https://betterprogramming.pub/two-error-handling-methods-for-asynchronous-code-in-express-js-72feb82d4f2