如何在 express 中敏感化 req.body 对象数据

how to sensitize req.body object data in express

我想从我的快速 api 请求中删除所有恶意数据输入? 我如何敏感化数据

"use strict";
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
const bodyParser =  require("body-parser");
const mongoose = require('mongoose');
require('dotenv').config();
var util= require('util');
var cors = require('cors');

我在上面的代码中使用了所有的包

请参阅为您的请求对象清理 npm 包 Link: https://www.npmjs.com/package/sanitize

您可以使用 lodash 按照以下方式执行该清理过程。

const _ = require('lodash');
function sanitize(body, values) {
  return _.pick(req.body, values);
}
console.log(sanitize(req.body, ['name', 'email', 'password']));

如果您使用的是 express,则可以使用以下中间件:

const validatorFunc = (values) => {
  return (req,res,next) => {
    const data = _.pick(req.body, values);
    req.body = data;
    next();
  }
}