...
|
...
|
@@ -103,9 +103,12 @@ exports.notFound = () => { |
|
|
* @return {[type]}
|
|
|
*/
|
|
|
exports.serverError = () => {
|
|
|
const statusCodeList = [403];
|
|
|
|
|
|
return async(err, req, res, next) => {
|
|
|
const uid = req.user ? req.user.uid : 0;
|
|
|
const udid = _.get(req, 'cookies.udid', 'yoho');
|
|
|
let errorCode = 500;
|
|
|
|
|
|
forceNoCache(res);
|
|
|
|
...
|
...
|
@@ -113,6 +116,10 @@ exports.serverError = () => { |
|
|
|
|
|
err.code = parseInt(err.code || err.statusCode, 10) || 500;
|
|
|
|
|
|
if (statusCodeList.indexOf(err.code) >= 0) {
|
|
|
errorCode = err.code;
|
|
|
}
|
|
|
|
|
|
if (err.type !== 'entity.parse.failed') { // json 解析失败不上报错误
|
|
|
logger.error(`error at path: ${req.url}`);
|
|
|
logger.error(err);
|
...
|
...
|
@@ -211,7 +218,7 @@ exports.serverError = () => { |
|
|
}
|
|
|
|
|
|
if (!res.headersSent) {
|
|
|
return _err500(req, res, 500, err);
|
|
|
return _err500(req, res, errorCode, err);
|
|
|
}
|
|
|
|
|
|
return next(err);
|
...
|
...
|
|