nodejs express wechat 实现微信消息功能
2016-04-20 16:07
891 查看
参考官方:https://github.com/node-webot/wechat
直接上能用的
1. 微信公众平台准备:
需要:
(1)appid:wxf5eefxxx19a47c0d 。即 AppID(应用ID)。
(2)URL(服务器地址): http://test.nodejs.xxx.com/wechat 。 填你的服务器处理请求地址。
(3)token:CjpMHxxxEEbfq3qTesSc 。 随便写,跟代码保持一致即可,最好是20位。
(4)encodingAESKey: a3uGNIYMEYraMX3xxxxxjqNAOYDnA8rIhseK99。 即图中的 消息加解密密钥。点 随机生成即可。(追加:用的时候发现,这个没用到,估计选 加密方式 时起作用)
2. 写最简单的 基于 express和wechat的处理代码。
消息结构说明 (req.weixin):
3. 跑起来看看吧
直接上能用的
1. 微信公众平台准备:
需要:
(1)appid:wxf5eefxxx19a47c0d 。即 AppID(应用ID)。
(2)URL(服务器地址): http://test.nodejs.xxx.com/wechat 。 填你的服务器处理请求地址。
(3)token:CjpMHxxxEEbfq3qTesSc 。 随便写,跟代码保持一致即可,最好是20位。
(4)encodingAESKey: a3uGNIYMEYraMX3xxxxxjqNAOYDnA8rIhseK99。 即图中的 消息加解密密钥。点 随机生成即可。(追加:用的时候发现,这个没用到,估计选 加密方式 时起作用)
2. 写最简单的 基于 express和wechat的处理代码。
// 直接改 app.js var express = require('express'); var app = express(); var wechat = require('wechat'); var config = { token : 'CjpMHxxxEEbfq3qTesSc', appid : 'wxf5xxxxd19a47c0d', encodingAESKey : 'a3uGNIYMEYraMX3xxxxxxxwjqNAOYDnA8rIhseK99' }; app.use(express.query()); app.use('/wechat', wechat(config, function(req, res, next) { // 微信输入信息都在req.weixin上 var message = req.weixin; console.log('log mao:', message); if (message.Content === 'diaosi') { // 回复屌丝(普通回复) res.reply('hehe'); } else if (message.Content === 'text') { console.log('log text'); // 你也可以这样回复text类型的信息 res.reply({ content : 'text object', type : 'text' }); } else if (message.Content === 'hehe') { // 回复一段音乐 res.reply({ type : "music", content : { title : "来段音乐吧", description : "一无所有", musicUrl : "http://mp3.com/xx.mp3", hqMusicUrl : "http://mp3.com/xx.mp3", thumbMediaId : "thisThumbMediaId" } }); } else { // 回复高富帅(图文回复) res.reply([ { title : '你来我家接我吧', description : '这是女神与高富帅之间的对话', picurl : 'https://www.baidu.com/img/bd_logo1.png', url : 'https://www.baidu.com/' } ]); } })); // 注意加上 端口监听 var server = app.listen(13001, function() { var host = server.address().address; var port = server.address().port; console.log('Example app listening at http://%s:%s', host, port); });
消息结构说明 (req.weixin):
{ ToUserName : 'gh_30e178xxbe7', FromUserName : 'omIHmwCxxxxxxf8Dyn2YGQj4', CreateTime : '1461140663', MsgType : 'text', Content : 'xxv', MsgId : '62755513xxx5544996' }
3. 跑起来看看吧
相关文章推荐
- 微信公众号命名规则将调整 全平台公众号名称唯一
- 扫二维码下载apk并统计被扫描次数(及微信屏蔽下载解决方案)
- iOS分享微信联系人/朋友圈详解
- 微信清理H5真的太早了?这会是应用号发布的前兆吗
- 微信开发测试号配置
- Java小程序之判断输入年份是否是闰年
- 微信js sdk invalid signature签名错误
- JS判断手机类型,及是否在微信内打开
- Android微信支付
- 安卓系统给手机设置代理
- IOS 微信支付的开发
- 微信get post请求到微信服务器 模版 素材操作
- 微信支付宝扫码支付相关接口
- 模仿微信支付输入密码框的效果
- 改进:js修改iOS微信浏览器的title
- 哪家的微信三级分销系统功能比较好
- 关于微信分享的一个小问题
- 微信公众平台:前端批量下载语音并重命名文件
- AngularJS 第一个小程序
- 微信支付开发(7) 收货地址共享接口V2