返回错误对象以及 hapijs boom 对象

Returning error object along with the hapijs boom object

我正在尝试 return boom 内部错误对象的响应中的错误对象,但它一直忽略错误对象。 我试图遵循答案 here 但没有帮助。

function (request, reply) {

    options.healthCheck(function (err) {

        if (!err) {
            return reply('I\'m healthy!!!');
        }

        var boomErr = boom.internal('I don\'t feel so good', {
            err: err
        });
        boomErr.output.payload.details = err;
        return reply(boomErr);
    });
}

这是回复:

{  
   "statusCode":500,
   "error":"Internal Server Error",
   "message":"An internal server error occurred",
   "details":{  }
}

深入研究 boom docs 后,我发现所有 5xx 错误都隐藏了自定义消息和负载。 切换到错误请求错误解决了我的问题。