【发布时间】:2019-12-16 11:28:08
【问题描述】:
我正在设置包含从用户收到的密码的日志记录,并将此对象发布到后端,密码是 JSON 对象中的键。
例如,
{
"username": my_username,
"password": my_password
}
我想在 POST 之前捕获这个对象,但不想记录密码值。有没有办法排除密码值被记录?
我正在constants.js 中创建一个 JSON 骨架,如下所示
constants.js
const userDataObj = Object.freeze({
"username": null,
"occupation": null,
"password": null
})
module.exports = userDataObj;
然后在我的routes.js 中将其发布到后端。
firemanRoutes.js:
import userDataObj from '../../config/constants';
...
//initialize stuff in the constructor and set constants
constructor(socketProvider) {
super(socketProvider);
this.userDataObj = JSON.parse(JSON.stringify(userDataObj));
this.userDataObj.occupation = 'fireman';
}
// get the passphrase and post object
validate(res, user, passphrase) {
this.userDataObj.passphrase = passphrase;
// want to log object here **without** password
winston.info('Posting object: ' + this.userDataObj);
validateUser.post(user, this.userDataObj).then(() => {
if (!validateUser.getSuccess()) {
return super.handleErrors(res);
}
...
【问题讨论】:
-
好吧,我们可以看看你的代码吗?哪个功能负责这样做?日志是怎么做的?
-
@CalvinNunes 添加
-
winston.info('发布对象:' + this.userDataObj.username + " " + this.userDataObj.occupation); ........这就是你要问的吗?
标签: javascript node.js json object passwords