gpt4 book ai didi

javascript - 如何处理 AngularJS 中的服务器端错误

转载 作者:行者123 更新时间:2023-11-28 01:05:57 24 4
gpt4 key购买 nike

如何使用 angularjs 处理服务器端错误。我看到了一些解决方案,例如 How to properly handle server side errors? ,但它们并不真正符合我的需求/也许我需要改变我的失败行为。请注意,我正在服务器端处理路由。

我的问题是,在服务器端我运行了一些 mongo 查询,这些查询我返回到我的路由。请注意,这些查询也可能会生成自定义错误(例如字段长度不合适)。例如:

服务器端

成分 Controller

controller.getIngredient = function(cb) {
Ingredient.findOne({},cb)
}

在我的路由处理程序中,我调用此函数:

function(req, res) {
ingredientController.getIngredient(function(err, data) {
if (err)
res.json({
error: 1
})
else
res.json({
error: 0,
data: 'success'
})
})
}

请注意,json 中也可能包含错误消息。

客户端

productServices.getIngredient()
.success(function(result) {
//error should be handled here e.g. result.error === 1
$scope.ingredient = result.data
})
.error(function(err) {
console.log('error ' + err)
})

我做得对吗?如果是,那么我应该如何给用户一些反馈。

最佳答案

一种解决方案是创建一个显示错误消息的服务和指令。在主模板中加载指令,然后使用该服务来更新它。

另一个选项是使用angular-growl图书馆:

angular.module('MyModule').service(
'MyService',
function (growl) {
this.getDatabaseResult = function () {
getResult().then(
function (result) {
growl.addSuccessMessage('Success!');
},
function (error) {
growl.addErrorMessage('Get Database Result Error: ' + error);
}
);
}
}
);

关于javascript - 如何处理 AngularJS 中的服务器端错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25085370/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com