gpt4 book ai didi

Javascript 如何将 xml2js 放入函数中

转载 作者:行者123 更新时间:2023-11-30 08:23:46 26 4
gpt4 key购买 nike

我正在尝试导出一个将 xml 解析为 json 对象的函数。

export const parse = (body) => {
const parser = new xml2js.Parser({explicitArray: false, trim: true});
parser.parseString(body, (err, result) => {
if (err) return err;
parser.parseString(result['soapenv:Envelope']['soapenv:Body']['ns1:searchResponse'].searchReturn._, (err, result) => {
if (err) return err;
console.log(result);
return result;
});
});
}

我遇到的问题是该函数返回未定义,但是,它设法向 console.log 记录正确的结果。

最佳答案

由于您的函数是异步的,您可以将其转换为 promise。

export const parse = (body) => {

return new Promise((resolve, reject) => {

const parser = new xml2js.Parser({explicitArray: false, trim: true});
parser.parseString(body, (err, result) => {
if (err) return reject(err);
parser.parseString(result['soapenv:Envelope']['soapenv:Body']['ns1:searchResponse'].searchReturn._, (err, result) => {
if (err) return reject(err);
resolve(result);
});
});
}


})

你可以这样使用它..

const result = await parse(<somebody>)

关于Javascript 如何将 xml2js 放入函数中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49180116/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com