22 lines
526 B
JavaScript
22 lines
526 B
JavaScript
const fs = require("node:fs")
|
|
const crypto = require("node:crypto")
|
|
|
|
function getFileHash(filePath) {
|
|
return new Promise((resolve, reject) => {
|
|
const hash = crypto.createHash("sha256")
|
|
const file = fs.createReadStream(filePath)
|
|
file.on("error", (err) => {
|
|
reject(err)
|
|
})
|
|
file.on("data", (chunk) => {
|
|
hash.update(chunk)
|
|
})
|
|
file.on("end", () => {
|
|
resolve(hash.digest("hex"))
|
|
})
|
|
})
|
|
}
|
|
|
|
module.exports = {
|
|
getFileHash
|
|
} |