共计 3922 个字符,预计需要花费 10 分钟才能阅读完成。
开源免费的微信消息推送服务、10 万次额度 +2MB 镜像,开发者福音
微信消息推送
作为一名开发者,你一定遇到过这样的场景:
- • 服务器半夜报警,需要第一时间通知
- • 自动化脚本跑完任务,想知道结果
- • 个人博客有新评论,想及时收到提醒
- • NAS、路由器、树莓派这些设备需要状态监控
最直接的方案当然是——发微信。但问题来了:怎么发?
企业微信认证太麻烦,第三方服务收费不菲,自己写又要搞懂微信的整套 API、Token 刷新、模板消息规则……光是看文档就能劝退不少人。
最近发现一个开源项目 go-wxpush,用 Go 语言写的,完美解决了这个问题:极简部署、完全免费、每天 10 万次额度,而且 Docker 镜像才 2MB。

今天就带你拆解这个工具,5 分钟上手。
核心特性
先上结论,这个工具的几个杀手锏:
| 特性 | 说明 | 对开发者的价值 |
|---|---|---|
| 完全免费 | 基于微信测试公众号 | 个人和小团队零成本 |
| 部署极简 | Docker 镜像仅 2MB | 秒启动,资源占用极低 |
| 超高额度 | 每天 10 万次推送 | 个人项目根本用不完 |
| 原生体验 | 微信原生弹窗 + 声音提醒 | 和普通消息无差别 |
| 多用户支持 | 可配置多个接收人 | 团队协作友好 |
| 自带详情页 | 消息点击可查看详情 | 适合展示完整日志 |
三步搞定微信测试账号
正式部署前,需要先搞定微信这边的配置。别担心,5 分钟就能搞定。
第一步:申请测试公众号
打开这个链接:https://mp.weixin.qq.com/debug/cgi-bin/sandbox
扫码登录后会看到一个测试号管理界面,这里有两个关键信息:
- appID:类似 `wx1234567890abcdef` 的字符串
- appsecret:一串加密字符串

第二步:获取你的 UserID
在测试号页面下方有个 ” 用户列表 ” 区域,用你的微信扫描页面上的二维码,扫码后你的微信号就会出现在列表中,格式通常类似 oXXXXXX-xxxx。
这个 UserID 就是消息接收者的唯一标识。

第三步:创建消息模板
在测试号页面的 ” 新增测试模板 ” 处,创建一个模板。关键点来了:
模板内容必须按这个格式填写:
内容: {{content.DATA}}
注意!不要 只填 {{content.DATA}},前面必须加个 ” 内容:” 或者其他文字,否则推送会不显示内容!
创建成功后会得到一个 template_id,记下来,后面要用。


这样你就获得了
appid
secret
userid
template_id
把值复制出来备用。
部署方式
准备好上述参数后,就可以部署服务了。项目提供了三种方式:
方式一:Docker 一键部署(推荐)
这是最推荐的方式,镜像只有 2MB,秒启动。
# 重新部署请先拉一遍最新的镜像
docker pull hezhizheng/go-wxpush:v4
# 参数格式与终端启动保持一致, 替换成实际值即可
docker run -it -d -p 5566:5566 --init --name go-wxpush4 hezhizheng/go-wxpush:v4 \
-port "5566" \
-title "测试标题 5566" \
-content "测试内容 5566" \
-appid "xxx" \
-secret "xxx" \
-userid "xxx-k08" \
-template_id "xxx-Ks_PwGm--GSzllU" \
-tz "Asia/Shanghai"
星哥实测:
[root@xxxx ~]# curl http://127.0.0.1:5566/wxsend?title= 服务器通知 &content= 服务已于北京时间 %2026:00%20 重启
[1] 15196
[root@xxxx ~]# {"errcode":0,"errmsg":"ok"}
效果:

方式二:直接下载编译好的文件(最简单)
项目在 Releases 页面提供了编译好的可执行文件,支持 Windows、macOS、Linux 多平台。
下载后直接运行:
./go-wxpush_windows_amd64.exe -port "5566" \
-title "测试标题" \
-content "测试内容" \
-appid "你的 appID" \
-secret "你的 appsecret" \
-userid "你的 UserID" \
-template_id "你的 template_id" \
-base_url "https://push.hzz.cool"
方式三:自行编译(完全控制)
如果你需要自定义或者想学习源码,可以直接编译:
# 安装 gox 工具
go install github.com/mitchellh/gox@latest
# 生成各平台可执行文件
gox -osarch="windows/amd64" -ldflags "-s -w"
gox -osarch="linux/amd64" -ldflags "-s -w"
gox -osarch="darwin/amd64" -ldflags "-s -w"
API 使用:GET 和 POST 都支持
服务启动后,默认监听 5566 端口,推送接口非常简单。
GET 请求(适合快速测试)
http://127.0.0.1:5566/wxsend?title= 服务器通知 &content= 服务已于北京时间 %2022:00%20 重启
参数说明:
| 参数 | 必填 | 说明 |
|---|---|---|
| title | 是 | 消息标题 |
| content | 是 | 消息内容 |
| appid | 是 | 微信测试号 appID |
| secret | 是 | 微信测试号 appsecret |
| userid | 是 | 接收者 UserID |
| template_id | 是 | 消息模板 ID |
| base_url | 否 | 消息详情页跳转地址 |
| tz | 否 | 时区(默认东八区) |
POST 请求(适合 Webhook 集成)
更适合自动化场景,比如 GitHub Actions、CI/CD、服务器监控等。
curl --location --request POST 'http://127.0.0.1:5566/wxsend' \
--header 'Content-Type: application/json' \
--data-raw '{"title":"Webhook 通知 ","content":" 自动化任务已完成。","appid":" 你的 appID","secret":" 你的 appsecret","userid":" 你的 UserID","template_id":" 你的 template_id"}'
响应结果
成功时返回:
{
"errcode": 0,
"errmsg": "ok"
}
失败时会返回对应的错误码和错误信息。
实战场景
理论说完了,来点实际应用场景:
场景一:服务器监控报警
写个简单的监控脚本,CPU 超过 80% 时触发推送:
#!/bin/bash
CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')
if (($(echo "$CPU_USAGE > 80" | bc -l) )); then
curl "http://127.0.0.1:5566/wxsend?title=⚠️服务器报警 &content=CPU 使用率:${CPU_USAGE}%"
fi
场景二:CI/CD 通知
在 GitHub Actions 中添加推送步骤,构建完成自动通知:
- name: 发送微信通知
run: |
curl -X POST http://your-server:5566/wxsend \
-H "Content-Type: application/json" \
-d '{"title":"✅ 构建成功 ","content":" 项目 ${{ github.repository}} 分支 ${{github.ref}} 构建完成 "}'
场景三:自动化脚本结果
每天定时跑的数据分析脚本,跑完推送结果:
import requests
def send_notification(title, content):
url = "http://127.0.0.1:5566/wxsend"
params = {
"title": title,
"content": content
}
requests.get(url, params=params)
send_notification("📊 数据分析完成", "今日新增用户: 123, 活跃用户: 456")
友情提醒
- 1. 测试号限制:使用的是微信测试公众号,扫描人数限制在 100 人,但个人和小团队完全够用
- 2. 模板格式:再次强调,模板内容一定要加前缀,比如 ” 内容: {{content.DATA}}”
- 3. 不要滥用公共服务:虽然作者提供了免费服务,但建议自行部署,避免给别人带来压力
- 4. 时区问题:默认使用东八区,如果需要其他时区,可以通过
tz参数设置
总结
写文不易,如果你都看到了这里,请点个赞和在看,分享给更多的朋友;也别忘了关注星哥玩云!这里有满满的干货分享,还有轻松有趣的技术交流~点个赞、分享给身边的小伙伴,一起成长,一起玩转技术世界吧!😊
go-wxpush 这个项目虽然小,但解决了开发者的真实痛点:简单、免费、可靠。
如果你正在为微信消息推送发愁,不妨试试这个方案。5 分钟就能搭建起来,从此告别监控盲区。
项目地址:https://github.com/hezhizheng/go-wxpush






