how complete the ftruncate ? with/withtout callback(false)?
my code in RESTful API is :
lib.update=function(dir,file,data, callBack){
//Open the file for writing
fs.open(lib.baseDir+dir+'/'+file+'.json', 'r+',function(err,fileDescriptor){
if(!err && fileDescriptor){
var stringData = JSON.stringify(data);
fs.ftruncate(fileDescriptor, (err) => {
if (!err) {
fs.writeFile(fileDescriptor, stringData, function (err) {
if (!err) {
fs.close(fileDescriptor, function (err) {
if (!err) {
callBack(true);
} else {
callback('Err in closing existing file');
}
});
} else {
callback('Error updating to existing file');
}
});
} else {
callback('Err truncating file');
}
});
} else{
callBack('Cannot Update the file, it may not exist yet');
}
});
};
the error is actually, when we run the postman, it is keep sending the 'sending the request' but never ending; but the file is updated
whilst typeing on stackoverflow, I just noticed
Oh! My goodness !!!
have u notice I have written "callback" as "callBack" in 2 place.
and I jst made it as "callback" instead of any caps... after editing 'callback' in fs.open (bottom else for err msg of 'file may not exist yet'), then postman works, file updated. DONE!
Then when I also change the 'callBack' in fs.close (if no err), then it again sending the reuqest, but not even updating...?
Can someone explain the logic here?
Is this matter of NodeJs version ?
Food For Learning
question from:
https://stackoverflow.com/questions/65866087/callback-or-callback-complete-the-ftruncate-with-callback 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…