FS覆盖文件
FS overwrites file
我创建了一个联系页面,其中的 post 数据将被写入一个文件,但是当另一个人在联系页面上写入时,旧数据会被新数据覆盖(意味着旧数据数据丢失,我无法帮助这个人)我该如何解决这个问题?
我的代码:
app.post('/process', function(req, res, next){
console.log('Form : ' + req.query.form);
console.log('CSRF token : ' + req.body._csrf);
console.log('Email : ' + req.body.email);
console.log('Question : ' + req.body.ques);
res.redirect(303, '/thankyou');
fs.writeFile('./contactdata/contactdata.txt',
req.query.form + ':' + req.body._csrf + ':' + req.body.email + ':' + req.body.ques, function(err){
if(err){
return console.error(err);
};
});
});
+ ':' 是用来分隔东西的。
不使用 fs.writeFile
,而是使用 fs.appendFile
将新数据添加到特定文件的末尾。
fs.appendFile
就是你需要用到的:
- 它将数据附加到现有文件的 EOF
- 如果文件不存在则创建
app.post('/process', function(req, res, next){
console.log('Form : ' + req.query.form);
console.log('CSRF token : ' + req.body._csrf);
console.log('Email : ' + req.body.email);
console.log('Question : ' + req.body.ques);
res.redirect(303, '/thankyou');
fs.appendFile('./contactdata/contactdata.txt',
req.query.form + ':' + req.body._csrf + ':' + req.body.email + ':' + req.body.ques, function(err){
if(err){
return console.error(err);
};
});
});
我创建了一个联系页面,其中的 post 数据将被写入一个文件,但是当另一个人在联系页面上写入时,旧数据会被新数据覆盖(意味着旧数据数据丢失,我无法帮助这个人)我该如何解决这个问题?
我的代码:
app.post('/process', function(req, res, next){
console.log('Form : ' + req.query.form);
console.log('CSRF token : ' + req.body._csrf);
console.log('Email : ' + req.body.email);
console.log('Question : ' + req.body.ques);
res.redirect(303, '/thankyou');
fs.writeFile('./contactdata/contactdata.txt',
req.query.form + ':' + req.body._csrf + ':' + req.body.email + ':' + req.body.ques, function(err){
if(err){
return console.error(err);
};
});
});
+ ':' 是用来分隔东西的。
不使用 fs.writeFile
,而是使用 fs.appendFile
将新数据添加到特定文件的末尾。
fs.appendFile
就是你需要用到的:
- 它将数据附加到现有文件的 EOF
- 如果文件不存在则创建
app.post('/process', function(req, res, next){
console.log('Form : ' + req.query.form);
console.log('CSRF token : ' + req.body._csrf);
console.log('Email : ' + req.body.email);
console.log('Question : ' + req.body.ques);
res.redirect(303, '/thankyou');
fs.appendFile('./contactdata/contactdata.txt',
req.query.form + ':' + req.body._csrf + ':' + req.body.email + ':' + req.body.ques, function(err){
if(err){
return console.error(err);
};
});
});