进入common创建模块 nb-xml2js
(名字自定义)
在模块目录下安装 xml2js
npm i xml2js
编辑 index.js
var xml2js = require('xml2js');
module.exports = async (xml) => {
// 文本消息
let obj = await xml2js.parseStringPromise(xml, { explicitArray: false })
return obj.xml;
}
上传模块
在需要调用nb-xml2js模块的云函数右键勾选nb-xml2js模块
使用nb-xml2js模块
let xml = event.body
// 解析XML内容
let xmlObj = await xml2js(xml)
let {
ToUserName, // appid
FromUserName, // openid
MsgType, // text,event
EventKey,
Content,
} = xmlObj
let content = 'hello'
//返回数据给客户端
let msg = '<xml>' +
'<ToUserName><![CDATA[' + FromUserName + ']]></ToUserName>' +
'<FromUserName><![CDATA[' + ToUserName + ']]></FromUserName>' +
'<CreateTime>' + parseInt(new Date().valueOf() / 1000) + '</CreateTime>' +
'<MsgType><![CDATA[text]]></MsgType>' +
'<Content><![CDATA[' + content + ']]></Content>' +
'</xml>'
return msg