文档章节

nodejs express wechat 实现微信消息功能

 小懒猫Mao
发布于 2016/04/20 16:07
字数 406
阅读 596
收藏 3

参考官方: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的处理代码。

// 直接改 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. 跑起来看看吧

© 著作权归作者所有

共有 人打赏支持
粉丝 2
博文 18
码字总数 10962
作品 0
昌平
私信 提问
node-wechat 微信实践

node-wechat 从去年开始微信开发越来越火了,体现在sdk和h5上(h5如果大家想听,可以回复),这里就简单介绍一下sdk开发 既然是noder,那肯定要用nodejs写,不然会被鄙视的。 node-webot简介...

i5ting
2015/07/10
0
3
微信相关资料汇总

微信,是一个生活方式 https://weixin.qq.com/ 微信支付:https://pay.weixin.qq.com/index.php 微信公众平台开发者文档:http://mp.weixin.qq.com/wiki/home/index.html 微信公众平台开发者...

岱然_
2016/05/19
1
0
Scala实战-通过微信聊天窗口实现应答式点餐 1:连接微信API

当前代码tag: v0.0.1,https://github.com/yangbajing/wechat-meal/tree/v0.0.1 微信公众号提供了详尽的API文档说明,提供了明文和加密两种接入方式。这里,我们选择加密的接入方式微信公众号...

羊八井
2015/08/18
0
0
开发者实验室之------搭建微信订阅号后台服务

准备域名 任务时间:20min ~ 40min 微信公众平台需要配置服务器地址 URL 访问,在实验开始之前,我们要准备域名。 域名注册 如果您还没有域名,可以在腾讯云上选购,过程可以参考下面的视频。...

时光流转
2017/10/27
0
0
【微信公众平台开发】之一:入门与BAE3.0下操作

0、资料 * 官方文档(http://mp.weixin.qq.com/wiki/home/index.html) *《微信公众平台搭建与开发揭秘》 * 玩转微信公众平台(http://blog.csdn.net/column/details/weixin-start530.html)...

realsa
2014/09/17
0
2

没有更多内容

加载失败,请刷新页面

加载更多

CockroachDB

百度云上的CockroachDB 云数据库 帮助文档 > 产品文档 > CockroachDB 云数据库 > 产品描述 开源NewSQL – CockroachDB在百度内部的应用与实践 嘉宾演讲视频及PPT回顾:http://suo.im/5bnORh ...

miaojiangmin
25分钟前
1
0
I2C EEPROM驱动实例分析

上篇分析了Linux Kernel中的I2C驱动框架,本篇举一个具体的I2C设备驱动(eeprom)来对I2C设备驱动有个实际的认识。 s3c24xx系列集成了一个基于I2C的eeprom设备at24cxx系列。at24cxx系列芯片包...

yepanl
26分钟前
2
0
spring mvc拦截器,实现统计http请求的后台运行时间

使用两种方式,实现拦截http请求的后台运行时间。 废话不多说直接上代码 /** * Http请求时间统计 * 拦截所有请求 */public class HttpRquestTimeInterceptor extends HandlerIntercepto...

兜兜毛毛
44分钟前
3
0
设计模式之工厂模式

本篇博文主要翻译这篇文章: https://www.journaldev.com/1392/factory-design-pattern-in-java 由于翻译水平有限,自认为许多地方翻译不恰当,欢迎各位给出宝贵的建议,建议大家去阅读原文。...

firepation
59分钟前
5
0

中国龙-扬科
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部