繁体   English   中英

使用Javascript将XML转换为Base64

[英]Convert XML to Base64 using Javascript

在我的代码中,我已将数据从JSON模型转换为XML。 为了确保格式正确,我将创建的XML字符串解析为XML Doc。 (API不能与格式不正确的XML一起使用)

因此,我需要使用Javascript将XML Doc变量转换为Base64(而不是XML字符串)的帮助。

var parser = new DOMParser();
var xmlDoc = parser.parseFromString(xmlDataString,"text/xml");

除了btoa()之外,有人知道用于转换字符串的函数吗?

使用btoa(xmlDataString)返回API错误“ Xml解析错误:格式不正确”,使用btoa(xmlDoc)返回Base64,当再次解码时返回:“ [object XMLDocument]”

谢谢

序列化您的XML,然后转换为Base64:(new XMLSerializer())。serializeToString(xml);

prolog = '<?xml version="1.0" encoding="utf-8" standalone="yes"?>';
var parser = new DOMParser();
XmlStr = prolog + "<bookz/>";
var xmlz  = parser.parseFromString(XmlStr, "application/xml");
console.log(window.btoa((new XMLSerializer()).serializeToString(xmlz)));

结果:

PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/Pgo8Ym9va3ovPg==

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM