我正在快递4路线中进行一些验证。验证在使用中并在帖子上执行;如果验证失败,我不明白如何让帖子不被触发。
exports.setRoutes = function setRoutes(router) {
var bodyParser = require("body-parser");
var parseJson = bodyParser.json();
router.use(routeLocation, parseJson, function (req, res, next) {
if (req.method === 'POST') {
var err = // do some validation;
IF ERR EXISTS, DON'T FIRE POST BELOW
}
}
router.post('/',parseJson, function(req,res) {
// insert row into database
}
}
答案 0 :(得分:1)
没有办法不发布帖子,因为它是服务器收到的信号,无法撤消。但是,您可以防止错误的POST在您的系统上执行任何操作。
以下是我们在发布电话会议期间处理验证的方式:
function runValidationFunction(req,res){
//do your validation here
}
router.post('/',runValidationFunction,parseJson, function(req,res) {
// insert row into database
}
这样你的验证函数就会在你的逻辑之前运行。希望有所帮助