本文介绍了在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的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-16 17:17