代码拉取完成,页面将自动刷新
此工程为 https://github.com/silenceper/wechat的二开版本
主场开发场景是多第三方平台为起点控制多小程序包含支付全套流程中间件
因此本工程开发线路也是围绕着主场工程线路展开,有坑排坑,有缺补缺
sdk实例获取
// memcache := cache.NewMemcache("127.0.0.1:11211")
memcache := chache.NewMemory()
wcConfig := &wechat.Config{
AppID: cfg.AppID,
AppSecret: cfg.AppSecret,
Token: cfg.Token,
EncodingAESKey: cfg.EncodingAESKey,//消息加解密时用到
Cache: memcache,
}
微信通知接收
//配置微信参数
config := &wechat.Config{
AppID: "xxxx",
AppSecret: "xxxx",
Token: "xxxx",
EncodingAESKey: "xxxx",
Cache: cache.NewMemory(), // 使用memory保存access_token,也可选择redis或自定义cache
}
wc := wechat.NewWechat(config)
// 传入request和responseWriter
server := wc.GetServer(request, responseWriter)
server.SetMessageHandler(func(msg message.MixMessage) *message.Reply {
//回复消息:演示回复用户发送的消息
text := message.NewText(msg.Content)
return &message.Reply{message.MsgTypeText, text}
})
server.Serve()
server.Send()
主要是request和responseWriter在不同框架中获取方式可能不一样:
Cache 设置
Cache主要用来保存全局access_token以及js-sdk中的ticket:
默认采用memcache存储。当然也可以直接实现cache/cache.go
中的接口
缓存字典
key | 备注 |
---|---|
qy_access_token_${小程序APPID} | 小程序token |
authorizer_access_token_${小程序APPID} | 代小程序accesstoken |
component_access_token_${平台APPID} | 代小程序accesstoken |
component_verify_ticket_${平台APPID} | 第三方平台票据 |
更多API使用请参考 godoc : https://godoc.org/gitee.com/zhimiao/wechat-sdk
Apache License, Version 2.0
This software uses the following third party open source components.
The third party licensors of these components may provide additional license rights,
terms and conditions and/or require certain notices as described below.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。