Nodejs并在后端和前端表达错误处理

时间:2016-08-11 17:42:18

标签: angularjs node.js express

我目前正在使用nodejs,express和angular在门户网站上工作。我遇到的一个问题是如何进行错误处理。我已阅读快速错误处理指南并已实现其默认错误处理功能。所以,我似乎无法找到适合这种情况的最佳做法。

例如,如果我尝试从数据库中检索并且找不到它,则服务器将发送404并在https请求中将在客户端处理它。唯一的问题是,它将错误消息和堆栈跟踪发送到客户端的控制台。我的方法是基于该错误,我会在客户端通过显示诸如"不正确的密码"之类的消息来处理它。或"无法在数据库中找到此电子邮件。你想注册吗?"。

我的另一个例子是当用户输入他的信用卡信息时。在客户端,有一个关于他的账单信息的http请求。如果我收到" 404"如果没有找到结算信息,我会打开一个添加结算表单。如果是" 200",我会在同一页面上显示当前的结算信息。

在不向用户发送错误的情况下捕获前端错误的最佳做法是什么?

function getBillingInfo(){
    $http.get('test/api/billinginfo', {
        params: {
            token: store.get('token')
        }
    }).then(function (response) {
        //Retrieve billing information
        $scope.billingInfo = response.data;

        //Display current billing information
        $scope.billingState = "display";
    }, function (response) {
        //Display add billing form
        $scope.billingState = "add";
        //Initialize form input
        $scope.billingAdd = {
            country:"US",
            month:"month",
            year:"year",
            state:"AL"
        };
    });
}

0 个答案:

没有答案