-
Notifications
You must be signed in to change notification settings - Fork 1
/
errorHandling.js
executable file
·81 lines (78 loc) · 2.64 KB
/
errorHandling.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
/**
* Error Control Script for common use
* @author Hubert Wang
* @version 0.0.2
*/
/**
* Error Message
* 1001 - attribute required All Resources None
* 1002 - attribute value's length is less than minlength All Resources None
* 1003 - attribute value's length is longer than maxlength All Resources None
* 1004 - invalid attribute {0} format All Resources {0} = email, phone
* 1005 - invalid attribute value type All Resources None
* 1006 - identifier not matching any resource instance All Resources None
* 1007 - identifier should not provided when patching All Resources None
*/
function errorHandle(err) {
var errMsgs = [];
for(var key in err.errors){
if (err.errors[key].kind === "required") {
var newMsg = {
"errorCode": 1001,
"errorMsg": err.errors[key].message,
"statusCode": 400,
"statusTxt": "Bad Request"
};
errMsgs.push(newMsg);
}
if (err.errors[key].kind === "minlength") {
var newMsg = {
"errorCode": 1002,
"errorMsg": err.errors[key].message,
"statusCode": 400,
"statusTxt": "Bad Request"
};
errMsgs.push(newMsg);
}
if (err.errors[key].kind === "maxlength") {
var newMsg = {
"errorCode": 1003,
"errorMsg": err.errors[key].message,
"statusCode": 400,
"statusTxt": "Bad Request"
};
errMsgs.push(newMsg);
}
if (err.errors[key].kind === "user defined") {
var newMsg = {
"errorCode": 1004,
"errorMsg": err.errors[key].message,
"statusCode": 400,
"statusTxt": "Bad Request"
};
errMsgs.push(newMsg);
}
if (err.errors[key].kind === "ObjectID") {
var newMsg = {
"errorCode": 1007, // identifier should not provided when patching
"errorMsg": err.errors[key].message,
"statusCode": 400,
"statusTxt": "Bad Request"
};
errMsgs.push(newMsg);
}
}
if (err.kind === "ObjectId") {
var newMsg = {
"errorCode": 1006, // identifier not matching any resource instance
"errorMsg": err.message,
"statusCode": 404,
"statusTxt": "Bad Request"
};
errMsgs.push(newMsg);
}
return errMsgs;
}
module.exports = {
errorHandle: errorHandle
}