'use strict';
|
|
exports.detectErrorMessage = function(ctx, err) {
|
// detect json parse error
|
if (err.status === 400 &&
|
err.name === 'SyntaxError' &&
|
ctx.request.is('application/json', 'application/vnd.api+json', 'application/csp-report')) {
|
return 'Problems parsing JSON';
|
}
|
return err.message;
|
};
|
|
exports.detectStatus = function(err) {
|
// detect status
|
let status = err.status || 500;
|
if (status < 200) {
|
// invalid status consider as 500, like urllib will return -1 status
|
status = 500;
|
}
|
return status;
|
};
|
|
exports.accepts = function(ctx) {
|
if (ctx.acceptJSON) return 'json';
|
if (ctx.acceptJSONP) return 'js';
|
return 'html';
|
};
|
|
exports.isProd = function(app) {
|
return app.config.env !== 'local' && app.config.env !== 'unittest';
|
};
|