Node.js --如何实现req.body.param验证

Node.js --如何实现req.body.param验证,node.js,Node.js,新手问题请回答。 我正在尝试验证下面的MAXDEPTH值。 如果大于x或小于y,请执行函数updateMaxdepth()。 否则打印错误,表示输入值超出范围。 我确实安装了快速验证器。 只是不知道如何在下面的代码中实现。 谢谢你的帮助 ============================================================ app.post('/submit', urlencodedParser, function(req, res) { var QMGR

新手问题请回答。 我正在尝试验证下面的MAXDEPTH值。 如果大于x或小于y,请执行函数updateMaxdepth()。 否则打印错误,表示输入值超出范围。 我确实安装了快速验证器。 只是不知道如何在下面的代码中实现。 谢谢你的帮助

============================================================

app.post('/submit', urlencodedParser, function(req, res) {
var QMGR      = req.body.qmgr;
var APP_ID    = req.body.app_id;
var QUEUE     = req.body.queue;
var CURDEPTH  = parseInt(req.body.curdepth);
var MAXDEPTH  = parseInt(req.body.maxdepth);

var bash = {cmd_1: `su mqm -c dspmq | grep ${QMGR}`,
cmd_2: `su mqm -c 'echo \"dis queue(${QUEUE}) CURDEPTH MAXDEPTH\" | runmqsc ${QMGR}' | grep MAX |grep -v dis| perl -lanF\"[()]\" -e 'print $F[1]'`,
cmd_3: `su mqm -c 'echo \"dis queue(${QUEUE}) CURDEPTH MAXDEPTH\" | runmqsc ${QMGR}' | grep MAX |grep -v dis| perl -lanF\"[()]\" -e 'print $F[3]'`,
cmd_4: `su mqm -c 'echo \"alt ql(${QUEUE}) maxdepth(${MAXDEPTH})\" | runmqsc ${QMGR}'`}

let transport = nodemailer.createTransport({host: 'smtp.qcorpaa.aa.com',
port: 25,
//port: 587,
secure: false,
tls: {rejectUnauthorized: false}
//tls: { ciphers:'SSLv3' }});

function updateMaxdepth() {var child = cp.exec(bash.cmd_4, function(err, stdout, stderr) {if (stdout.includes('changed')){var mailOptions = {
from: 'root@esmqst15',
to: 'DL_Enterprise_MQ@aa.com',
subject: 'Maxdepth Updated for queue '+req.body.queue+' on QMGR '+req.body.qmgr,
text: 'Maxdepth Updated for queue '+req.body.queue+' to '+req.body.maxdepth+' on QMGR '+req.body.qmgr+' by App_ID '+req.body.app_id
};
console.log(mailOptions);
transport.sendMail(mailOptions, function(err, info) {
if (err) {
  console.log(err)
} else {
  console.log(info);
}}}});

代码示例(应该是这样的)

app.post('/submit',urlencodedParser,函数(req,res){
var QMGR=req.body.QMGR;
var APP_ID=req.body.APP_ID;
var QUEUE=req.body.QUEUE;
var CURDEPTH=parseInt(请求body.CURDEPTH);
var MAXDEPTH=parseInt(req.body.MAXDEPTH);
var bash={cmd_1:`su mqm-c dspmq | grep${QMGR}`,
cmd|u 2:`su mqm-c'echo\'dis queue(${queue})CURDEPTH MAXDEPTH\''runmqsc${QMGR}'| grep MAX | grep-v dis | perl-lanF\'[()]\'-e'print$F[1]`,
cmd|U 3:`su mqm-c'echo\'dis queue(${queue})CURDEPTH MAXDEPTH\''runmqsc${QMGR}''124; grep MAX | grep-v dis | perl-lanF\'[()]\'-e'print$F[3]`,
cmd_4:`su mqm-c'echo\'alt ql(${QUEUE})maxdepth(${maxdepth})\''runmqsc${QMGR}'
让transport=nodeEmailer.createTransport({host:'smtp.qcorpaa.aa.com',
港口:25,
//港口:587,
安全:错误,
tls:{拒绝未授权:错误}
//tls:{密码:'SSLv3'}});
如果(req.body.param>x | | req.body.param
您可以使用if语句在函数中执行:
if(req.body.param>x | | req.body.param
如果您需要更详细的答案,请告诉我谢谢Elnatan..因此我正在考虑插入if..else条件,如果为true,则执行updateMaxdepth()函数。这是我不确定如何做的地方..如果你能给我一个代码示例..Thnx
app.post('/submit', urlencodedParser, function(req, res) {
var QMGR      = req.body.qmgr;
var APP_ID    = req.body.app_id;
var QUEUE     = req.body.queue;
var CURDEPTH  = parseInt(req.body.curdepth);
var MAXDEPTH  = parseInt(req.body.maxdepth);

var bash = {cmd_1: `su mqm -c dspmq | grep ${QMGR}`,
cmd_2: `su mqm -c 'echo \"dis queue(${QUEUE}) CURDEPTH MAXDEPTH\" | runmqsc ${QMGR}' | grep MAX |grep -v dis| perl -lanF\"[()]\" -e 'print $F[1]'`,
cmd_3: `su mqm -c 'echo \"dis queue(${QUEUE}) CURDEPTH MAXDEPTH\" | runmqsc ${QMGR}' | grep MAX |grep -v dis| perl -lanF\"[()]\" -e 'print $F[3]'`,
cmd_4: `su mqm -c 'echo \"alt ql(${QUEUE}) maxdepth(${MAXDEPTH})\" | runmqsc ${QMGR}'`}

let transport = nodemailer.createTransport({host: 'smtp.qcorpaa.aa.com',
port: 25,
//port: 587,
secure: false,
tls: {rejectUnauthorized: false}
//tls: { ciphers:'SSLv3' }});

if(req.body.param > x ||  req.body.param < y) {
 updateMaxdepth()
} else {
 return res.status(400).json({msg:'not valid'})
}

function updateMaxdepth() {var child = cp.exec(bash.cmd_4, function(err, stdout, stderr) {if (stdout.includes('changed')){var mailOptions = {
from: 'root@esmqst15',
to: 'DL_Enterprise_MQ@aa.com',
subject: 'Maxdepth Updated for queue '+req.body.queue+' on QMGR '+req.body.qmgr,
text: 'Maxdepth Updated for queue '+req.body.queue+' to '+req.body.maxdepth+' on QMGR '+req.body.qmgr+' by App_ID '+req.body.app_id
};
console.log(mailOptions);
transport.sendMail(mailOptions, function(err, info) {
if (err) {
  console.log(err)
} else {
  console.log(info);
}}}});