微信自动回复 要在公众平台设置目录
//微信消息
router.post('/',function(req , res){
var wx_token = 'xxxxxxtoken';
var wxConnect = require('wx-connect');
var parseString = require('xml2js').parseString;
var signature = req.query.signature;
var timestamp = req.query.timestamp;
var nonce = req.query.nonce;
console.log("signature:"+signature+ "\ntimestamp:"+timestamp+"\nnonce:"+nonce);
var app = wxConnect({appToken:wx_token});
var fromUser = '';
var toUser = '';
req.on("data",function(data){
if(data){
console.log("data+++++++++++++++++++++++++++:"+data);
parseString(data, function (err, result) {
var jsonStr = JSON.stringify(result);
var obj2 = JSON.parse(jsonStr);
console.dir(obj2);
fromUser = obj2.xml.FromUserName[0];
toUser = obj2.xml.ToUserName[0];
console.log("---------------from:---------------------:" + fromUser);
console.log("----------------to:--------------------:" +toUser );
});
}
});
req.on("end",function(){
var textRepy = "<xml>"+
"<ToUserName><![CDATA["+fromUser+"]]></ToUserName>"+
"<FromUserName><![CDATA["+toUser+"]]></FromUserName>"+
"<CreateTime>"+timestamp+"</CreateTime>"+
"<MsgType><![CDATA[news]]></MsgType>"+
"<ArticleCount>1</ArticleCount>"+
" <Articles>"+
" <item>"+
"<Title><![CDATA[微信消息]]></Title>"+
" <Description><![CDATA[简介]]></Description>"+
" <PicUrl><![CDATA[图片地址]]></PicUrl>"+
" <Url><![CDATA[图片的超链接]]></Url>"+
" </item>"+
"</Articles>"+
"</xml>"
console.log("end==========================================:"+textRepy);
res.write(textRepy);
res.end();
});
});
微信回复消息 主体思路就是,关注微信或者给公众号发消息时,微信会回调你在公众平台设置的目录,微信会给你发送一段xml格式的文档(xml具体内容看上面代码打印的data),你解析xml数据后 拼装数据,以xml格式 再给微信发送过去, 大体思路是这样~ 最简单的微信机器人就完成了,