Javascript 中 Ruby 的 .pack("H*")].pack("m0") 的等效方法是什么?
what is the equivalent method for .pack("H*")].pack("m0") of Ruby in Javascript?
在 Ruby 中,我使用函数 .pack("H*")].pack("m0")
将十六进制消息字符串编码为 base64 字符串。
例如
msg_hex = 8308862831031591345F010101020663602A06E300000000EF934E0C5B29E50E000000000000000000000310000000004F04010000010000
msg_hex.pack("H*")].pack("m0") => gwiGKDEDFZE0XwEBAQIGY2AqBuMAAAAA75NODFsp5Q4AAAAAAAAAAAAAAxAAAAAATwQBAAABAAA=
在 Javascript 中,我正在寻找将消息转换为 64base 消息的等效方法。有些答案告诉使用Buffer.from(msg_hex).toString('base64')
,但结果不同。
const msg_hex = 8308862831031591345F010101020663602A06E300000000EF934E0C5B29E50E000000000000000000000310000000004F04010000010000
Buffer.from(msg_hex).toString('base64') // => ODMwODg2MjgzMTAzMTU5MTM0NUYwMTAxMDEwMjA2NjM2MDJBMDZFMzAwMDAwMDAwRUY5MzRFMEM1QjI5RTUwRTAwMDAwMDAwMDAwMDAwMDAwMzEwMDAwMDAwMDA0RjA0MDAwMDAwMDEwMDAw
Javascript 中 Ruby 的 .pack("H*")].pack("m0")
的等效方法是什么?
您提供的东西就快到了。
您只是忘了告诉 Buffer.from
您提供的是什么,默认情况下,如果您发送一个字符串,它只会将其存储为一个字符串。但是你想要的是将源代码解码为十六进制,然后存储为二进制。
这样做 ->
Buffer.from(msg_hex, 'hex').toString('base64')
IOW:你刚刚错过了第二个参数 hex
..
在 Ruby 中,我使用函数 .pack("H*")].pack("m0")
将十六进制消息字符串编码为 base64 字符串。
例如
msg_hex = 8308862831031591345F010101020663602A06E300000000EF934E0C5B29E50E000000000000000000000310000000004F04010000010000
msg_hex.pack("H*")].pack("m0") => gwiGKDEDFZE0XwEBAQIGY2AqBuMAAAAA75NODFsp5Q4AAAAAAAAAAAAAAxAAAAAATwQBAAABAAA=
在 Javascript 中,我正在寻找将消息转换为 64base 消息的等效方法。有些答案告诉使用Buffer.from(msg_hex).toString('base64')
,但结果不同。
const msg_hex = 8308862831031591345F010101020663602A06E300000000EF934E0C5B29E50E000000000000000000000310000000004F04010000010000
Buffer.from(msg_hex).toString('base64') // => ODMwODg2MjgzMTAzMTU5MTM0NUYwMTAxMDEwMjA2NjM2MDJBMDZFMzAwMDAwMDAwRUY5MzRFMEM1QjI5RTUwRTAwMDAwMDAwMDAwMDAwMDAwMzEwMDAwMDAwMDA0RjA0MDAwMDAwMDEwMDAw
Javascript 中 Ruby 的 .pack("H*")].pack("m0")
的等效方法是什么?
您提供的东西就快到了。
您只是忘了告诉 Buffer.from
您提供的是什么,默认情况下,如果您发送一个字符串,它只会将其存储为一个字符串。但是你想要的是将源代码解码为十六进制,然后存储为二进制。
这样做 ->
Buffer.from(msg_hex, 'hex').toString('base64')
IOW:你刚刚错过了第二个参数 hex
..