写了一个基于 golang 开发的极简微信测试公众号模板消息推送服务
github 地址 https://github.com/hezhizheng/go-wxpush
✨ 特性
✅ 完全免费,下载即使用
✅ 每天 10 万次额度,个人用不完
✅ 真正的微信原生弹窗 + 声音提醒
✅ 支持多用户
✅ 提供免费服务https://push.hzz.cool(请勿滥用)
✅ 跳转稳定,自带消息详情页面 (默认使用https://push.hzz.cool/detail, 可自己部署后使用参数替换)
✅ 可无限换皮肤 (使用项目wxpushSkin)
⚠️ 部署条件 (具体可查看github)
-
获取appid 、appsecret
-
关注测试公众号,获取userid(微信号),新增测试模板(注意模版内容填写格式
内容: {{content.DATA}}) 获取template_id(模板ID) -
将以上获取到的参数代入下面使用即可
🚀 部署指南
下载编译好的文件启动
- 启动参数
- 命令行启动参数(可不加,启动之后直接在url上拼接参数也可)
./go-wxpush_windows_amd64.exe -port "5566" -title "测试标题" -content "测试内容" -appid "xxx" -secret "xxx" -userid "xxx-k08" -template_id "xxx-Ks_PwGm--GSzllU" -base_url "https://push.hzz.cool" - url请求参数(get)
与命令行参数名称一致/wxsend?appid=xxx&secret=xxx&userid=xxx-k08&template_id=xxx-Ks_PwGm--GSzllU&base_url=https://push.hzz.cool&content=保持微笑,代码无 bug!
- 命令行启动参数(可不加,启动之后直接在url上拼接参数也可)
🗭 默认消息详情页
服务启动成功后会自带消息详情页界面(即消息模板跳转的页面),访问地址 http://127.0.0.1:5566/detail ,如有公网地址,可设置base_url参数为对应的host即可(无需加/detail)。
⚙️ API 使用方法
服务部署成功后,您可以通过构造 URL 发起 GET 请求来推送消息。
请求地址
http://127.0.0.1:5566/wxsend
请求参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
port |
String | 否 | 指定启动端口(仅针对命令行) |
title |
String | 是 | 消息的标题。 |
content |
String | 是 | 消息的具体内容。 |
appid |
String | 否 | 临时覆盖默认的微信 AppID。 |
secret |
String | 否 | 临时覆盖默认的微信 AppSecret。 |
userid |
String | 否 | 临时覆盖默认的接收用户 OpenID。 |
template_id |
String | 否 | 临时覆盖默认的模板消息 ID。 |
base_url |
String | 否 | 临时覆盖默认的跳转 URL。 |
使用示例
基础推送
向默认配置的所有用户推送一条消息:
http://127.0.0.1:5566/wxsend?title=服务器通知&content=服务已于北京时间%2022:00%20重启
临时覆盖用户
向一个临时指定的用户推送消息:
http://127.0.0.1:5566/wxsend?title=私人提醒&content=记得带钥匙&userid=temporary_openid_here
Webhook / POST 请求
除了 GET 请求,服务也支持 POST 方法,更适合用于自动化的 Webhook 集成。
请求地址
http://127.0.0.1:5566/wxsend
请求方法
POST
请求头 (Headers)
{
"Content-Type": "application/json"
}
请求体 (Body)
请求体需要是一个 JSON 对象,包含与 GET 请求相同的参数。
{
"title": "Webhook 通知",
"content": "这是一个通过 POST 请求发送的 Webhook 消息。"
}
使用示例 (cURL)
curl --location --request POST 'http://127.0.0.1:5566/wxsend' \
--data-raw '{
"title": "来自 cURL 的消息",
"content": "自动化任务已完成。"
}'
成功响应
如果消息成功发送给至少一个用户,服务会返回 "errcode": 0 状态码。
失败响应
如果发生错误(如 token 错误、缺少参数、微信接口调用失败等),服务会返回相应的状态码和错误信息。
微信公众平台接口测试帐号?
这个好像没搞过。。搞个试试
来看看
留印,以后有时间看
东西不错。确实秒通知。
可惜公众号都折叠了。还要点进去看。。
不过推送的怎么只有个标题。没内容。
点开是一个网页没有content的内容。模板内容设置的{{content.DATA}}
哦。好像要自己部署公网。显示网页。
通知内容只能网页显示。不能直接看么?
那个标题好像不能设置参数。那通知里都是同一个标题
@新来的 #5 折叠这个确实有点无解 微信为了让我们看广告无所不用其极
模板内容设置的时候最好前面加点内容 不要仅填{{content.DATA}} 可以填 消息: {{content.DATA}}
通知的标题由于微信的限制确实改不了 网页可以正常显示
@新来的 #5
你把模板内容改成
消息: {{content.DATA}}这样 可以直接看的@ns-master #8
OK了。前面加个消息就能看了
默认详情页。
我看https://github.com/frankiejun/wxpushSkin
支持部署到虚拟主机?比如我部署了
https://abc.com/wx/index.html
那-base_url应该如何填写
我写 https://abc.com/wx/ 好像不行。
https://abc.com/wx/index.html 也不行。会在后面加/detail?title....