本文介绍了在javascript中将十六进制字符串转换为base64的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
现在我有一个文件的MD5十六进制摘要字符串,我想将其转换为base64,以便在上传时使用Content-MD5 HTTP标头。
Now I have a string of a MD5 hex digest for a file, and I want to convert it to base64 in order to use the Content-MD5 HTTP header when uploading it.
任何帮助都将不胜感激
推荐答案
var hexArray = myHexString
.replace(/\r|\n/g, "")
.replace(/([\da-fA-F]{2}) ?/g, "0x$1 ")
.replace(/ +$/, "")
.split(" ");
var byteString = String.fromCharCode.apply(null, hexArray);
var base64string = window.btoa(byteString);
请参阅此处了解btoa文档:
See here for btoa docs: https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/btoa
也适用于polyfill:
Also for polyfill: https://stackoverflow.com/a/23190164/275501
这篇关于在javascript中将十六进制字符串转换为base64的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!