我正在使用Node.js为文件生成哈希值,然后在更改时,我希望在保存之前将其与之前的版本匹配。例如,如果没有发生任何更改,则不会进行任何保存。
我尝试以下代码来完成任务(受doc of Node.js启发):
var filename = __dirname + '/public/team.html';
var shasum = crypto.createHash('sha1');
var s = fs.ReadStream(filename);
s.on('data', function(d) {
shasum.update(d);
});
s.on('end', function() {
var d = shasum.digest('hex');
console.log(d + ' ' + filename);
});
我想知道如何保存文件的哈希以便以后匹配它。任何想法都会受到欢迎。
答案 0 :(得分:1)
简单的解决方案:只需将其写入文件(每个要保存的文件的附加信息文件)。
更复杂的解决方案:保留一个包含所有哈希值的文件(路径,哈希)。您必须加载文件,解析数据并在每次后保存。
正确的解决方案:使用数据库。使用SQLite应该非常容易,您不需要单独的数据库服务器。这是NodeJS的驱动程序示例: