Files
RuoYi-Vue/docs/wechat-draft.md
2026-09-18 09:30:59 +08:00

28 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 公众号草稿箱集成部署
## 部署
1. 执行 `sql/wechat_draft.sql`。
2. 为后端设置至少 16 位的环境变量 `WECHAT_MP_SECRET_KEY`。该值用于 AES-GCM 加密 AppSecret,上线后不要随意更换。
3. 将后端服务器的固定出口 IP 添加到微信公众平台 IP 白名单。
4. 在角色管理中授予“公众号草稿”菜单及相关按钮权限。
5. 打开“公众号草稿 → 公众号账号”,录入 AppID/AppSecret 后先执行“测试”。
Spring Boot 也支持使用配置项 `wechat.mp.secret-key`,生产环境建议始终使用环境变量。
## 使用
1. 进入“源码管理”,在项目行点击“公众号草稿”。
2. 选择公众号、文案模板、排版主题(经典/优雅/简洁)、字号(14~18px)和主题色,修改 Markdown 后点击“刷新预览”。
3. 确认后点击“推送到草稿箱”。后端会下载正文图片,转存到微信图床,生成封面并创建草稿。
4. 可在“公众号草稿 → 草稿推送记录”查看 MediaID、错误信息或重试失败任务。
内置“经典、优雅、简洁”三套排版主题,以及“更小、稍小、推荐、稍大、更大”五档字号。主题结构与视觉规则参考 `doocs/md`,后端会转换为微信公众号可用的内联样式 HTML。
## 限制
- 正文图片会统一转换为 JPEG 并压缩至 1MB 以内。
- 封面优先使用正文第一张图片,并压缩后上传为永久缩略图素材;正文没有图片时使用现有 `CoverGenerator` 生成项目文字封面。
- 当 `draft/add` 已返回 MediaID,但 `draft/get` 二次校验失败时,记录仍标记为成功并保留警告,避免重试产生重复草稿。
- 系统只推送到草稿箱,不会自动发表。