3
express-validator을 사용하여 노드/Express API에 매개 변수 유효성 검사를 구현하려고합니다. 그러나 다음 curl 명령 curl -X POST -d "foo=bar" http://localhost:3000/collections/test
을 사용하여 누락 된 필드 (이 경우 이름)가있는 POST 요청을하면 유효성 검사를 건너 뛰어도 요청이 계속 진행됩니다. 아래는 현재 코드입니다 - 유효성 검사가 무시 된 이유에 대한 아이디어는 무엇입니까?Express Validator를 사용하여 POST 매개 변수 유효성 검사
var util = require('util');
var express = require('express');
var mongoskin = require('mongoskin');
var bodyParser = require('body-parser');
var expressValidator = require('express-validator');
var app = express();
app.use(bodyParser());
app.use(expressValidator());
var db = mongoskin.db('mongodb://@localhost:27017/test', {safe:true})
app.param('collectionName', function(req, res, next, collectionName){
req.collection = db.collection(collectionName)
return next()
});
app.post('/collections/:collectionName', function(req, res, next) {
req.checkBody('name', 'name is required').notEmpty();
req.collection.insert(req.body, {}, function(e, results){
if (e) return next(e)
res.send(results)
});
});
app.listen(3000);
을 - 오류 로직을 몰랐습니다 'req.checkBody' 후에 필요합니다. 감사! – Anconia