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

markwang e4fc0bd615 feat: 企业微信-客户联系-结束临时会话 (#878) 4 mesi fa
.github e1122d42b0 Update FUNDING.yml 11 mesi fa
aispeech 15ebd71a04 规范目录 6 anni fa
cache 7d93d1b9c8 feat(redis): 优化配置语义并增强超时与连接池能力,同时保持向后兼容 (#869) 5 mesi fa
credential b639d2235d Add JSSDK context method functionality (#828) 1 anno fa
doc dad7932574 feat(work): add department by id (#741) 2 anni fa
domain 56a3734546 Feature: improve code message subscribe (#739) 2 anni fa
internal 31f8e24994 feat: 小程序/公众号增加 openApi 管理。 (#685) 3 anni fa
minigame 8e81a416c5 Adaptation of new go-redis components (#546) 4 anni fa
miniprogram f0f35e2f77 feat(miniprogram): add intracity delivery service APIs (#875) 5 mesi fa
officialaccount b639d2235d Add JSSDK context method functionality (#828) 1 anno fa
openplatform b639d2235d Add JSSDK context method functionality (#828) 1 anno fa
pay 85bf989242 feat: 添加发放红包接口 (#726) 2 anni fa
util 30c8e77246 fix: improve type safety in httpWithTLS for custom RoundTripper (#861) 8 mesi fa
work e4fc0bd615 feat: 企业微信-客户联系-结束临时会话 (#878) 4 mesi fa
.gitignore c8522f1875 小程序内容安全 (#415) 5 anni fa
.golangci.yml dea33e0e48 小程序消息推送 (#713) 2 anni fa
LICENSE f3303e2bb3 Initial commit 9 anni fa
README.md c806a0c172 Add star badge to README 8 mesi fa
doc.go a8f7a24ff6 feat: improve comment and upgrade golang version 1.16 (#604) 3 anni fa
go.mod 07b7dc40fc cache增加带Context版本,开放平台相关接口支持Context版本 (#653) 3 anni fa
go.sum 07b7dc40fc cache增加带Context版本,开放平台相关接口支持Context版本 (#653) 3 anni fa
wechat.go 97e1af5904 支持设置全局HTTPClient (#761) 2 anni fa

README.md

WeChat SDK for Go

Go Go Report Card pkg GitHub release (latest SemVer) star

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

文档 && 例子

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