在 Bot Builder 中解析来自 URL 的 XML 数据
Parse XML data from URL in Bot Builder
请问如何在 Bot Builder 中解析来自 URL 的 XML 数据?
我试过 xml2js 但没有用,还有 xmlhttprequest。
这里有我的源代码
var xmldata = "https://mvponduty.mvpondutyonmicrosoft.com/xml/data.xml";
console.log(xmldata);
parseString(xmldata, function (err, result) {
// Result contains XML data in JSON format
context.sendActivity(result.toString());
});
谢谢。
我在我这边为你做了一些测试,你可以尝试下面的代码从 URL 获取 xml 并在 bot 中将其解析为 JSON :
this.onMessage(async (context, next) => {
var xmlURL = 'https://andyapi2.azurewebsites.net/test/test.xml';
let xml2js = require('xml2js');
const axios = require('axios');
var resp = '';
await axios.get(xmlURL)
.then(response => {
xml2js.parseString(response.data, function(_err, result) {
console.log(result);
resp = result;
});
})
.catch(error => {
console.log(error);
});
await context.sendActivity(resp.note.body[0]);
await next();
});
XML 数据:
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
结果:
请问如何在 Bot Builder 中解析来自 URL 的 XML 数据?
我试过 xml2js 但没有用,还有 xmlhttprequest。
这里有我的源代码
var xmldata = "https://mvponduty.mvpondutyonmicrosoft.com/xml/data.xml";
console.log(xmldata);
parseString(xmldata, function (err, result) {
// Result contains XML data in JSON format
context.sendActivity(result.toString());
});
谢谢。
我在我这边为你做了一些测试,你可以尝试下面的代码从 URL 获取 xml 并在 bot 中将其解析为 JSON :
this.onMessage(async (context, next) => {
var xmlURL = 'https://andyapi2.azurewebsites.net/test/test.xml';
let xml2js = require('xml2js');
const axios = require('axios');
var resp = '';
await axios.get(xmlURL)
.then(response => {
xml2js.parseString(response.data, function(_err, result) {
console.log(result);
resp = result;
});
})
.catch(error => {
console.log(error);
});
await context.sendActivity(resp.note.body[0]);
await next();
});
XML 数据:
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
结果: