【发布时间】:2021-07-06 23:39:17
【问题描述】:
我明白了,我们可以使用 try 和 catch 块来捕捉任何运行时错误,请参见下面的代码示例。 我是 async/await 编码范例的新手,但我假设,我如何捕获下面的错误没有问题。我假设,如果我想在用户为 null 时抛出错误,在下面的代码中,我该怎么做?这是一个自定义错误还是我可以做 - 如果我想在我的应用程序中捕获并重新抛出它到一些常见的错误处理函数/代码,我该怎么做?
伪代码
if (user == undefined or null)
throw Error()
var express = require("express");
const models = require("../models");
router.get("/user/", async (req, res) => {
try {
const user = await user.getUser();
res.status(200).send({ ...user.toJSON() });
} catch (err) {
res.status(400).send({ status: false, error: 'something went wrong' ) })
}
});
【问题讨论】:
-
在中间件
async (req, res, next) => {中使用 next 然后在 catch 中使用它并让全局错误处理程序来处理它 -
@LawrenceCherone - 谢谢,我是 javascript/node web development 的新手。我假设下一个是另一个库,我可以下载。有没有例子或任何链接,你可以指点我吗?
-
不,rtm error-handling,middleware,请参阅这个旧答案,显示示例:stackoverflow.com/questions/66847371/…
-
@LawrenceCherone - 谢谢
标签: javascript node.js