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

yin jiashuai 54f08cbd73 update:小程序ocr识别 refs#864 (#865) 7 месяцев назад
.github e1122d42b0 Update FUNDING.yml 11 месяцев назад
aispeech 15ebd71a04 规范目录 6 лет назад
cache 24f812d187 feat: 支持Redis作为Cache的时候使用TLS (#834) 1 год назад
credential b639d2235d Add JSSDK context method functionality (#828) 1 год назад
doc dad7932574 feat(work): add department by id (#741) 2 лет назад
domain 56a3734546 Feature: improve code message subscribe (#739) 2 лет назад
internal 31f8e24994 feat: 小程序/公众号增加 openApi 管理。 (#685) 3 лет назад
minigame 8e81a416c5 Adaptation of new go-redis components (#546) 4 лет назад
miniprogram 54f08cbd73 update:小程序ocr识别 refs#864 (#865) 7 месяцев назад
officialaccount b639d2235d Add JSSDK context method functionality (#828) 1 год назад
openplatform b639d2235d Add JSSDK context method functionality (#828) 1 год назад
pay 85bf989242 feat: 添加发放红包接口 (#726) 2 лет назад
util 30c8e77246 fix: improve type safety in httpWithTLS for custom RoundTripper (#861) 8 месяцев назад
work c34ff2031b fix: 企业微信-通讯录管理-更新成员企业邮箱别名参数类型修正 (#863) 7 месяцев назад
.gitignore c8522f1875 小程序内容安全 (#415) 5 лет назад
.golangci.yml dea33e0e48 小程序消息推送 (#713) 2 лет назад
LICENSE f3303e2bb3 Initial commit 9 лет назад
README.md c806a0c172 Add star badge to README 8 месяцев назад
doc.go a8f7a24ff6 feat: improve comment and upgrade golang version 1.16 (#604) 3 лет назад
go.mod 07b7dc40fc cache增加带Context版本,开放平台相关接口支持Context版本 (#653) 3 лет назад
go.sum 07b7dc40fc cache增加带Context版本,开放平台相关接口支持Context版本 (#653) 3 лет назад
wechat.go 97e1af5904 支持设置全局HTTPClient (#761) 2 лет назад

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