github.com/fastwego/offiaccount@v1.0.1/README.md (about) 1 # fastwego/offiaccount 2 3 A fast [wechat offiaccount](https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html) development sdk written in Golang 4 5 [![GoDoc](https://pkg.go.dev/badge/github.com/fastwego/offiaccount?status.svg)](https://pkg.go.dev/github.com/fastwego/offiaccount?tab=doc) 6 [![Go Report Card](https://goreportcard.com/badge/github.com/fastwego/offiaccount)](https://goreportcard.com/report/github.com/fastwego/offiaccount) 7 8 ## 快速开始 & demo 9 10 ```shell script 11 go get github.com/fastwego/offiaccount 12 ``` 13 ```go 14 // 创建公众号实例 15 app := offiaccount.New(offiaccount.Config{ 16 Appid: "APPID", 17 Secret: "SECRET", 18 }) 19 20 // 调用 api 21 payload := []byte(` 22 { 23 "button":[ 24 { 25 "name":"菜单", 26 "sub_button":[ 27 { 28 "type":"view", 29 "name":"搜索", 30 "url":"http://www.baidu.com/" 31 }] 32 }] 33 }`) 34 35 resp, err := menu.Create(app, payload) 36 fmt.Println(resp, err) 37 ``` 38 39 完整的演示项目: 40 41 [https://github.com/fastwego/offiaccount-demo](https://github.com/fastwego/offiaccount-demo) 42 43 接口列表: 44 45 [doc/apilist.md](doc/apilist.md) 46 47 ## 架构设计 48 49 ![sdk](./doc/img/sdk.jpg) 50 51 ## 框架特点 52 53 ### 快速 54 55 「快」作为框架设计的核心理念,体现在方方面面: 56 57 - 使用 Go 语言,开发快、编译快、部署快、运行快,轻松服务海量用户 58 - 丰富的[文档](https://pkg.go.dev/github.com/fastwego/offiaccount) / [教程](./doc/SUMMARY.md) 和 [演示代码](https://github.com/fastwego/offiaccount-demo) ,快速上手,5 分钟即可搭建一套完整的微信公众号服务 59 - 独立清晰的模块划分,快速熟悉整个框架,没有意外,一切都是你期望的样子 60 - 甚至连框架自身的大部分代码也是自动生成的,维护更新快到超乎想象 61 62 ### 符合直觉 63 64 作为第三方开发框架,尽可能贴合官方文档和设计,不引入新的概念,不给开发者添加学习负担 65 66 ### 简洁而不过度封装 67 68 作为具体业务和微信公众号之间的中间层,专注于通道的角色:帮业务把配置/材料投递到公众号,将公众号响应/推送透传回业务 69 70 至于 [AccessToken 管理](./doc/access_token.md) 和 [消息加解密处理](./doc/message.md),框架内部完成得干净利落,开发者甚至觉察不到存在 71 72 ### 官方文档就是最好的文档 73 74 每个接口的注释都附带官方文档的链接,让你随时翻阅,省时省心 75 76 ### 完备的单元测试 77 78 100% 覆盖每一个接口,让你每一次调用都信心满满 79 80 ### 详细的日志 81 82 每个关键环节都为你完整记录,Debug 倍轻松,你可以自由定义日志输出,甚至可以关闭日志 83 84 ### 多账号支持 85 86 一套服务支持多个微信公众号账号,轻松成为第三方开发服务平台,业务节节高 87 88 ### 支持服务集群 89 90 单台服务器支撑不住访问流量/想提高服务可用性? 91 92 只需 [设置 GetAccessTokenFunc 方法](https://pkg.go.dev/github.com/fastwego/offiaccount/?tab=doc#example-OffiAccount.SetGetAccessTokenHandler) ,从中控服务获取 AccessToken,即可解决多实例刷新冲突/覆盖的问题 93 94 ### 活跃的开发者社区 95 96 FastWeGo 是一套完整的微信开发框架,包括公众号、开放平台、微信支付、企业微信、小程序、小游戏等微信服务,拥有庞大的开发者用户群体 97 98 你遇到的所有问题几乎都可以在社区找到解决方案 99 100 101 ## 参与贡献 102 103 欢迎提交 pull request / issue / 文档,一起让微信开发更快更好! 104 105 Faster we go together! 106 107 [加入开发者交流群](https://github.com/fastwego/fastwego.dev)