我希望在Restify中覆盖默认值。例如。现在我有像
这样的代码server.post('/names', function (req, res, next) {
names = req.params.names;
if (!Array.isArray(names)) {
return next(new restify.errors.BadRequestError('names field is wrong or missing'));
}
res.send({ code: "OK" });
return next();
});
我希望它只是
server.post('/names', function (req, res, next) {
names = req.params.names;
if (!Array.isArray(names)) {
return next(new restify.errors.BadRequestError('names field is wrong or missing'));
}
// Add names to DB
return next();
});
next
(非错误结果)与
function next(res) {
if (!body.hasOwnProperty("code")) {
body["code"] = "OK";
}
res.send(body);
}
实施此方法的最佳方法是什么?
答案 0 :(得分:0)
我认为您可能正在寻找在链中的所有其他处理程序完成后执行的处理程序。考虑"之后"事件处理程序在文档中,他们显示an example for audit logging。
您应该能够根据需要使用相同的内容来更新响应正文。代码可能看起来像这样......
server.on('after', function (request, response, route, error) {});
请注意,这仍然要求您从链中的所有其他处理程序return next();
开始。