Javascript 捕获错误以修复承诺拒绝
我收到了一些未处理的拒绝承诺错误,我正在尝试捕捉它们并在每次Javascript 捕获错误以修复承诺拒绝,javascript,node.js,Javascript,Node.js,我收到了一些未处理的拒绝承诺错误,我正在尝试捕捉它们并在每次语句后对它们进行安慰 但是,当我尝试在服务器上运行时,得到了一个“意外令牌”,时间段为。请尝试 我尝试了不同的格式,并尝试删除try,但没有效果。 有人能提供一些关于如何在这种情况下避免语法错误的提示吗 app.get('/:url', async function (req, res) { .init().then(async function() { .try { } catch (erro
语句后对它们进行安慰
但是,当我尝试在服务器上运行时,得到了一个“意外令牌”,时间段为。请尝试
我尝试了不同的格式,并尝试删除try
,但没有效果。
有人能提供一些关于如何在这种情况下避免语法错误的提示吗
app.get('/:url', async function (req, res) {
.init().then(async function() {
.try {
} catch (error) {
}(err => console.log(err)) ;
.open(decodeURIComponent(req.query.url)).then((site) => {
site.analyze().then(async function(results) {
.try {
} catch (error) {
}(err => console.log(err));
res.json(results);
对于其他上下文:这是一个快速应用程序。try
实际上没有附加到任何内容,因为它位于.then()
函数的回调中。我认为你根本不需要尝试,你可以做一些类似的事情
app.get('/:url', async function (req, res) {
wappalyzer.init().then(async function() {
// do something on success
})
.catch((err) => {
console.error(err)
})
})
您的代码不明确,请参阅注释。但我的猜测是,您正在寻找的是正确的方法来处理您当前正在处理的解决案例(然后
)中的承诺中的异常,而不是拒绝,在这种情况下,这可能就是您正在寻找的:
app.get('/:url', async function (req, res) {
wappalyzer.init().then(function() {
// handle success ...
}).catch(err => console.log(err));
wappalyzer.open(decodeURIComponent(req.query.url)).then((site) => {
site.analyze().then(function(results) {
// handle success ...
}).catch(err => console.log(err));
res.json(results);
})
}
您的代码没有解析,并且不清楚如何更正它。在两个(err=>…)
语句之前是否缺少逗号,或者在}
之前是否缺少逗号?还有中的
是什么。try
?意外标记是try
之前的点。您的代码格式不正确。您可以使用try/catch块try{}catch(e){}
或答案中建议的.catch()
方法。