oss-client
Version:
Aliyun OSS(Object Storage Service) Node.js Client
29 lines • 2.21 kB
JavaScript
import { escape as escapeHTML } from 'utility';
export function json2xml(json, options) {
let xml = '';
if (options?.headers) {
xml = '<?xml version="1.0" encoding="UTF-8"?>\n';
}
for (const key in json) {
const value = json[key];
if (value === null || value === undefined)
continue;
if (Array.isArray(value)) {
for (const item of value) {
xml += `<${key}>`;
xml += json2xml(item);
xml += `</${key}>`;
}
}
else if (typeof value === 'object') {
xml += `<${key}>`;
xml += json2xml(value);
xml += `</${key}>`;
}
else {
xml += `<${key}>${escapeHTML(value.toString())}</${key}>`;
}
}
return xml;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbjJ4bWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbC9qc29uMnhtbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxJQUFJLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUUvQyxNQUFNLFVBQVUsUUFBUSxDQUN0QixJQUE2QixFQUM3QixPQUE4QjtJQUU5QixJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUM7SUFDYixJQUFJLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNyQixHQUFHLEdBQUcsMENBQTBDLENBQUM7SUFDbkQsQ0FBQztJQUNELEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDdkIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUztZQUFFLFNBQVM7UUFDcEQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDekIsR0FBRyxJQUFJLElBQUksR0FBRyxHQUFHLENBQUM7Z0JBQ2xCLEdBQUcsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3RCLEdBQUcsSUFBSSxLQUFLLEdBQUcsR0FBRyxDQUFDO1lBQ3JCLENBQUM7UUFDSCxDQUFDO2FBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNyQyxHQUFHLElBQUksSUFBSSxHQUFHLEdBQUcsQ0FBQztZQUNsQixHQUFHLElBQUksUUFBUSxDQUFDLEtBQWdDLENBQUMsQ0FBQztZQUNsRCxHQUFHLElBQUksS0FBSyxHQUFHLEdBQUcsQ0FBQztRQUNyQixDQUFDO2FBQU0sQ0FBQztZQUNOLEdBQUcsSUFBSSxJQUFJLEdBQUcsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7UUFDNUQsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMifQ==