WeChat SDK for Go (微信SDK:简单、易用)

houseme 01eedc4274 chore: improve golangci il y a 1 an
.github 01eedc4274 chore: improve golangci il y a 1 an
aispeech 15ebd71a04 规范目录 il y a 6 ans
cache 07b7dc40fc cache增加带Context版本,开放平台相关接口支持Context版本 (#653) il y a 3 ans
credential 5b29289dbb fix: 修复缓存失效时,可能会重复获取accessToken的问题 (#762) il y a 2 ans
doc dad7932574 feat(work): add department by id (#741) il y a 2 ans
domain 56a3734546 Feature: improve code message subscribe (#739) il y a 2 ans
internal 31f8e24994 feat: 小程序/公众号增加 openApi 管理。 (#685) il y a 3 ans
minigame 8e81a416c5 Adaptation of new go-redis components (#546) il y a 4 ans
miniprogram 1138a7db0e feat:追加动态消息接口 (#775) il y a 2 ans
officialaccount 05ac7148d4 feat: 公众号新增模板接口,支持模板参数传递 (#783) il y a 1 an
openplatform 01eedc4274 chore: improve golangci il y a 1 an
pay 85bf989242 feat: 添加发放红包接口 (#726) il y a 2 ans
util 6b3532cc2d feat: Material 增加 AddMaterialFromReader 与 AddVideoFromReader 方法 (#780) il y a 1 an
work 9f14122a87 feat:企业微信-打卡-打卡配置及规则管理 (#755) il y a 2 ans
.gitignore c8522f1875 小程序内容安全 (#415) il y a 5 ans
.golangci.yml 01eedc4274 chore: improve golangci il y a 1 an
LICENSE f3303e2bb3 Initial commit il y a 9 ans
README.md adf142dac2 feat: modify redis version to v8.11.5 (#582) il y a 3 ans
doc.go 01eedc4274 chore: improve golangci il y a 1 an
go.mod 01eedc4274 chore: improve golangci il y a 1 an
go.sum 01eedc4274 chore: improve golangci il y a 1 an
wechat.go 97e1af5904 支持设置全局HTTPClient (#761) il y a 2 ans

README.md

WeChat SDK for Go

Go Go Report Card pkg version

使用Golang开发的微信SDK,简单、易用。

注意:当前版本为v2版本,v1版本已废弃

文档 && 例子

API列表

Wechat SDK 2.0 文档

Wechat SDK 2.0 例子

快速开始

import "github.com/silenceper/wechat/v2"

以下是一个微信公众号处理消息接收以及回复的例子:

// 使用memcache保存access_token,也可选择redis或自定义cache
wc := wechat.NewWechat()
memory := cache.NewMemory()
cfg := &offConfig.Config{
    AppID:     "xxx",
    AppSecret: "xxx",
    Token:     "xxx",
    // EncodingAESKey: "xxxx",
    Cache: memory,
}
officialAccount := wc.GetOfficialAccount(cfg)

// 传入request和responseWriter
server := officialAccount.GetServer(req, rw)
// 设置接收消息的处理方法
server.SetMessageHandler(func(msg *message.MixMessage) *message.Reply {

    // 回复消息:演示回复用户发送的消息
    text := message.NewText(msg.Content)
    return &message.Reply{MsgType: message.MsgTypeText, MsgData: text}
})

// 处理消息接收以及回复
err := server.Serve()
if err != nil {
    fmt.Println(err)
    return
}
// 发送回复的消息
server.Send()

目录说明

  • officialaccount: 微信公众号API
  • miniprogram: 小程序API
  • minigame:小游戏API
  • pay:微信支付API
  • openplatform:开放平台API
  • work:企业微信
  • aispeech:智能对话
  • doc: api文档

贡献

  • API列表中查看哪些API未实现
  • 提交issue,描述需要贡献的内容
  • 完成更改后,提交PR

公众号

img

License

Apache License, Version 2.0