1.0.6 • Published 8 years ago

weixin-service v1.0.6

Weekly downloads
23
License
ISC
Repository
github
Last release
8 years ago

weixin-service

微信公众服务相关 API 接口封装。

Build Status Coverage Status
Code Climate Dependency Status devDependency Status bitHound Score

####微信文档

第三方服务开发文档

####安装

npm install weixin-service --save

####使用

var options = {
	appid:        		 "your app_id",       
	appsecret:    		 "your app_secret",      
	token:         		 "token",                
	encrypt_key:   		 "encrypt_key",          
}

var wxs = require('weixin-service')(options);

var app = require('express')()

app.get('/wechat/notice', wxs.enable());
app.post('/wechat/notice', wxs.noticeHandle(noticeHandle));

app.get('/wechat/:appid/event', wxs.enable());
app.post('/wechat/:appid/event', wxs.eventHandle(eventHandle))

options 说明

appid: 第三方服务号 appid

appsecret: 第三方服务 appsecret

token: 第三方服务 token

encrypt_key: 第三方服务加密 key

attrNameProcessors: 数据属性的格式化处理,比如:{AppId: '1234'} -> {app_id: '1234'}

keep: 保持不变 (AppId)  
lowerCase: 小写 (appid)   
underscored: 小写并以下划线分开 (app_id)  
也可以自定义函数 function(attr){ return attr; }  

saveToken: 保存第三方服务的 component_access_token 函数,默认保存到内存中

saveToken = function(token, callback){}  
token: {  
	componentAccessToken: '',  
	expireTime: 7200  
}  

getToken: 获取 component_access_token 函数

saveToken = function(callback){ callback(null, token); }

saveTicket: 保存微信推送的 component_verify_ticket 函数

saveTicket = function(ticket){}

getTicket: 获取 component_verify_ticket 函数

getTicket: function(callback){ callback(ticket); }

API

  • 配置 request 请求的 options,参照 urllib
	wxs.setOpts({
		timeout: 10000
	})
  • 获取可用的 component_access_token
	wxs.getLastComponentAccessToken(function(err, token){});
  • 获取预授权码 pre_auth_code
	wxs.preAuthCode(function(err, ret){});
  • 使用授权码换取公众号的授权信息
	wxs.getAuthorizationiInfo(authorization_code, function(err, ret){});
  • 通过刷新令牌刷新(获取)授权公众号的令牌
	wxs.refreshToken(authorizer_appid, authorizer_refresh_token, function(err, ret){});
  • 获取授权方账户信息
	wxs.getAuthorizerInfo(authorizer_appid, function(err, ret){});
  • 获取授权方的选项设置信息
	wxs.getAuthorizerOption(authorizer_appid, option_name, function(err, ret){});
  • 设置授权方的选项设置信息
	wxs.getAuthorizerOption(authorizer_appid, option_name, option_value, function(err, ret){});
  • 待公众号发起网页授权时通过 code 换取 accessToken 等信息
	wxs.getOauthAccessToken(authorizer_appid, code, function(err, ret){});
  • 待公众号发起网页授权 刷新 accessToken(如果需要)
	wxs.refreshOauthAccessToken(authorizer_appid, refresh_token, function(err, ret){});
  • 通过网页授权access_token获取用户基本信息(需授权作用域为snsapi_userinfo)
	wxs.getOauthInfo(access_token, openid, function(err, ret){});

消息回复

res: response

media_id: 素材 id

  • 文本消息
	res.text('text');
  • 图片
	res.image(media_id);
  • 录音
	res.voice(media_id);
  • 视频
	res.video({video: media_id, title:'title', description: 'description'});
  • 音乐
	res.music({thumb_media: media_id, title: 'title', description: 'description', music_url: 'music_url', hq_music_url: 'hq_music_url'})
  • 图文消息
	var news = [
		{
			title: 'title',
			description: 'description',
			pic_url: 'pic_url',
			url : 'url'
		}
	];

	res.news(news);
  • 客服
	res.transfer();
  • IOT 设备消息
	res.device('command');
  • 回复空字符串
	res.ok();
1.0.6

8 years ago

1.0.5

9 years ago

1.0.4

9 years ago

1.0.3

9 years ago

1.0.2

9 years ago

1.0.1

9 years ago

0.0.11

9 years ago

0.0.10

9 years ago

0.0.9

9 years ago

0.0.8

9 years ago

0.0.7

9 years ago

0.0.6

9 years ago

0.0.5

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.2

9 years ago

0.0.1

9 years ago

0.0.0

9 years ago