公众号分类:
订阅号(新闻 资讯推送) 服务号(服务交互) 企业号
公众号开发模式:
开发模式
编辑模式(微信公众后台提供的,只需要操作它的后台就可以)
如何切换为开发模式:
image.png
此时会显示token验证失败(需要创建服务端代码接收):
image.png
const express = require('express')
const app = express()
// app.use(express.static('./dist'))
app.get("/",function(req,res){
res.send(req.query.echostr)
})
app.listen(8888,()=>{
console.log('8888')
})
启动之后再次提交,成功
注:当开始开发模式之后“功能选项”已经没用了
image.png
下载包转化xml2js内容:
cnpm install xml2js -S
简单的实现自定义回复内容:
const express = require('express')
//引入xml2js
var xml2js = require('xml2js');
//创建js对象:
var parser = new xml2js.Parser({explicitArray:false})
var builder = new xml2js.Builder({rootName:"xml",cdata:true,headless:true})
const app = express()
// app.use(express.static('./dist'))
app.get("/",function(req,res){
res.send(req.query.echostr)
})
//添加post的路由,处理微信服务器转发的用户消息
app.post("/",function(req,res){
console.log("用户发消息了")
//1.获取post请求的内容
var bufferList = []
req.on('data',function(chunk){
bufferList.push(chunk)
})
req.on('end',function(){
var result = Buffer.concat(bufferList)
//将读取的微信服务器消息使用xml2js转化为js对象
parser.parseString(result.toString(),function(err,result){
var msg = ""
if(result.xml.MsgType == 'text'){
switch(result.xml.Content){
case "1":
msg = "你好欢迎使用汉语";
break;
case "2":
msg = "你好欢迎使用英语";
break;
case "3":
msg = "你好欢迎使用法语";
break;
default:
msg = '请选择查询的语言:1.汉语 2.英语 3法语'
}
}
var returnMsg = {
ToUserName: result.xml.FromUserName,
FromUserName:result.xml.ToUserName,
CreateTime: +new Date(),
MsgType:"text",
Content:msg
}
res.send(builder.buildObject(returnMsg))
})
})
})
app.listen(8888,()=>{
console.log('8888')
})
网友评论