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

markwang 49c4cfaf54 fix:GetAccessTokenContext从cache中获取字符窜为空时,从微信服务器获取 (#721) 2 jaren geleden
.github 7d11af713b feat: improve workflows config and upgrade action version (#690) 3 jaren geleden
aispeech 15ebd71a04 规范目录 6 jaren geleden
cache 07b7dc40fc cache增加带Context版本,开放平台相关接口支持Context版本 (#653) 3 jaren geleden
credential 49c4cfaf54 fix:GetAccessTokenContext从cache中获取字符窜为空时,从微信服务器获取 (#721) 2 jaren geleden
doc da3859261b 企业微信-欢迎语素材管理,企业微信-获取成员ID列表 (#629) 3 jaren geleden
domain 31f8e24994 feat: 小程序/公众号增加 openApi 管理。 (#685) 3 jaren geleden
internal 31f8e24994 feat: 小程序/公众号增加 openApi 管理。 (#685) 3 jaren geleden
minigame 8e81a416c5 Adaptation of new go-redis components (#546) 4 jaren geleden
miniprogram dea33e0e48 小程序消息推送 (#713) 2 jaren geleden
officialaccount 26b0aacb4c feat: create mini program virtual payment (#709) 2 jaren geleden
openplatform b4f243ab13 Fix:err != nil return nil (#680) 3 jaren geleden
pay 85bf989242 feat: 添加发放红包接口 (#726) 2 jaren geleden
util 26b0aacb4c feat: create mini program virtual payment (#709) 2 jaren geleden
work ead8a6fadb fix(work): fix UserGet api error userid not found (#723) 2 jaren geleden
.gitignore c8522f1875 小程序内容安全 (#415) 5 jaren geleden
.golangci.yml dea33e0e48 小程序消息推送 (#713) 2 jaren geleden
.goreleaser.yml 83e223999b add .goreleaser.yml 4 jaren geleden
LICENSE f3303e2bb3 Initial commit 9 jaren geleden
README.md adf142dac2 feat: modify redis version to v8.11.5 (#582) 3 jaren geleden
doc.go a8f7a24ff6 feat: improve comment and upgrade golang version 1.16 (#604) 3 jaren geleden
go.mod 07b7dc40fc cache增加带Context版本,开放平台相关接口支持Context版本 (#653) 3 jaren geleden
go.sum 07b7dc40fc cache增加带Context版本,开放平台相关接口支持Context版本 (#653) 3 jaren geleden
wechat.go 26b0aacb4c feat: create mini program virtual payment (#709) 2 jaren geleden

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