node js相当于Python utf8, Sha1, base64
Node js equivalent to Python utf8, Sha1, base64
我在python3
中有这段代码
payload = 'my URI'
payload_utf8 = payload.encode("utf-8")
print(payload_utf8)
payload_sha1 = hashlib.sha1(payload_utf8).digest()
print(payload_sha1)
payload_base64 = base64.b64encode(payload_sha1)
print(payload_base64)
我想要相同的结果,但在 node.js 中。我试过这个
const payload = "my URI";
console.log(payload);
const payload_UTF8 = utf8.encode(payload);
console.log(payload_UTF8);
const payload_Sha = crypto.createHash('sha1').update(payload_UTF8).digest()
console.log(payload_Sha);
const payload_Base64 = Buffer.from(payload_Sha).toString('base64');
但结果不一样。
结果是一样的,唯一的区别是在 python 例子中你返回一个字节数组,而在 Js 例子中,你返回一个字符串。如果您想以字符串格式获得完全相同的结果,您可以使用 print(payload_base64.decode("utf-8"))
.
我在python3
中有这段代码payload = 'my URI'
payload_utf8 = payload.encode("utf-8")
print(payload_utf8)
payload_sha1 = hashlib.sha1(payload_utf8).digest()
print(payload_sha1)
payload_base64 = base64.b64encode(payload_sha1)
print(payload_base64)
我想要相同的结果,但在 node.js 中。我试过这个
const payload = "my URI";
console.log(payload);
const payload_UTF8 = utf8.encode(payload);
console.log(payload_UTF8);
const payload_Sha = crypto.createHash('sha1').update(payload_UTF8).digest()
console.log(payload_Sha);
const payload_Base64 = Buffer.from(payload_Sha).toString('base64');
但结果不一样。
结果是一样的,唯一的区别是在 python 例子中你返回一个字节数组,而在 Js 例子中,你返回一个字符串。如果您想以字符串格式获得完全相同的结果,您可以使用 print(payload_base64.decode("utf-8"))
.