開源免費的微信消息推送服務、10萬次額度+2MB鏡像,開發者福音 微信消息推送
作為一名開發者,你一定遇到過這樣的場景:
? 服務器半夜報警,需要第一時間通知
? 自動化腳本跑完任務,想知道結果
? 個人博客有新評論,想及時收到提醒
? NAS、路由器、樹莓派這些設備需要狀態監控
最直接的方案當然是——發微信。但問題來了:怎么發?
企業微信認證太麻煩,第三方服務收費不菲,自己寫又要搞懂微信的整套 API、Token 刷新、模板消息規則……光是看文檔就能勸退不少人。
最近發現一個開源項目go-wxpush,用 Go 語言寫的,完美解決了這個問題:極簡部署、完全免費、每天10萬次額度,而且 Docker 鏡像才 2MB。
![]()
今天就帶你拆解這個工具,5 分鐘上手。
核心特性
先上結論,這個工具的幾個殺手锏:
特性
對開發者的價值
完全免費
基于微信測試公眾號
個人和小團隊零成本
部署極簡
Docker 鏡像僅 2MB
秒啟動,資源占用極低
超高額度
每天 10 萬次推送
個人項目根本用不完
原生體驗
微信原生彈窗+聲音提醒
和普通消息無差別
多用戶支持
可配置多個接收人
團隊協作友好
自帶詳情頁
消息點擊可查看詳情
適合展示完整日志
三步搞定微信測試賬號
正式部署前,需要先搞定微信這邊的配置。別擔心,5 分鐘就能搞定。
第一步:申請測試公眾號
打開這個鏈接: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"方式三:自行編譯(完全控制)如果你需要自定義或者想學習源碼,可以直接編譯:
API 使用:GET 和 POST 都支持# 安裝 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"
服務啟動后,默認監聽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% 時觸發推送:
場景二:CI/CD 通知#!/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
在 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
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.