push-server教程

push-server教程

1. 注册企业微信

谁都可以注册企业微信,无需认证,按说明注册并使用微信扫二维码完成管理员绑定

image-20260113135032134

2.微信插件

选择我的企业,点击微信插件,使用手机扫码关注

image-20260113141637650

3. 添加应用

image-20260113135814562

添加logo 和应用名称以及可见范围,选择一个部门或者自己都行,创建应用

image-20260113140040416

4. 配置应用

4.1 查看Secret

创建完成后会进入当前页面,点击查看可以看Secret

image-20260113140246938

点击发送,可前往企业微信查看消息

image-20260113140337706

点击查看,保存好,不要泄露,至关重要

image-20260113140752092

4.2 配置可信IP

在配置可信IP之前,我们需要先设置可信域名

可信域名需要校验域名,点击 申请校验域名 获得认证信息

下载文件放置到一个网站的根目录下,我这里放置到了自己在cloudflare的Workers 和 Pages 博客上 https://mazepeng.com/

当文件可以访问到的时候就可以设置可信域名了

image-20260113143711366


image-20260113143951627

现在推送消息的服务必须有可信IP,如何获得自己的IP呢

访问https://ifconfig.me/ 或者直接百度IP 就可以看到自己的公网 IP了

点击应用管理,点击应用,拉倒最下面,配置可信IP

image-20260113144027245

image-20260113144053776

5. 运行push-server

https://github.com/qingzhou-dev/push-server

这是开源的微信推送服务,支持docker部署和本地应用部署,这里我就介绍一下docker部署

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
docker run -d \
--name push-server \
-p 8000:8000 \
-e PUSH_AUTH_KEY="替换为自己的key" \
-e PUSH_WECOM_APP_KEY="你的应用AppKey" \
-e PUSH_WECOM_APP_SECRET="你的应用AppSecret" \
-e PUSH_WECOM_AGENT_ID="1000001" \
qingzhoudev/push-server:latest

# 安全设置,默认值为下方值,需要修改添加环境变量修改
docker run -d \
--name push-server \
-p 8000:8000 \
-e PUSH_AUTH_KEY="替换为自己的key" \
-e PUSH_WECOM_APP_KEY="你的应用AppKey" \
-e PUSH_WECOM_APP_SECRET="你的应用AppSecret" \
-e PUSH_WECOM_AGENT_ID="1000001" \
-e PUSH_SECURITY_BLOCK_MINUTES="30" \
-e PUSH_SECURITY_FAIL_WINDOW_MINUTES="5" \
-e PUSH_SECURITY_MAX_FAILS="5" \
-e PUSH_SECURITY_RATE_LIMIT_CAPACITY="10" \
-e PUSH_SECURITY_RATE_LIMIT_QPS="1" \
qingzhoudev/push-server:latest
  • PUSH_AUTH_KEY 请求头密钥,需要自己设置一个复杂的即可
  • PUSH_WECOM_APP_KEY 就是企业ID
  • PUSH_WECOM_APP_SECRET 就是保存的Secret
  • PUSH_WECOM_AGENT_ID 应用ID

替换后直接docker启动

image-20260113145319447

5.1 企业ID

image-20260113144923327

5.2 应用ID

image-20260113140246938

6 推送消息

和正常接收微信消息一样,没有什么区别
请注意target 指的是接收人账号,@all指所有人,多个账户可以使用 | 分隔

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
curl -X POST http://localhost:8000/api/v1/push \
-H "X-API-Key: 替换为自己的key" \
-H "Content-Type: application/json" \
-d '{
"target": "ZhangSan|LiSi",
"type": "TEXT",
"content": "系统通知:您的任务已构建完成。"
}'
curl -X POST http://localhost:8000/api/v1/push \
-H "X-API-Key: 替换为自己的key" \
-H "Content-Type: application/json" \
-d '{
"target": "MaZePeng",
"type": "TEXT_CARD",
"title": "测试Push Server",
"content": "我是 Push Server,这是我作为服务端的第一条消息",
"url": "https://www.mazepeng.com"
}'
curl -X POST http://localhost:8000/api/v1/push \
-H "X-API-Key: 替换为自己的key" \
-H "Content-Type: application/json" \
-d '{
"target": "MaZePeng",
"type": "NEWS",
"articles": [
{
"title": "测试 Article",
"description": "我是描述",
"url": "https://www.mazepeng.com",
"picUrl": "https://mazepeng.com/img/bg/a_larger_image_of_the_homepage.jpg"
}
]
}'


类型有:

  • TEXT
  • MARKDOWN(微信不支持)
  • TEXT_CARD
  • NEWS

87e0b18a08f5c33a46f07e0b1bc6df2a_compress.jpge0506bf5c26c38a75f67dd20590f7c20_compress.jpg | 229x499


push-server教程
https://mazepeng.com/2026/01/13/开源/push-server使用文档/
作者
马泽朋
发布于
2026年1月13日
许可协议