很多接口问题来自参数传得太随意。
第一次接入 md2wechat 时,先确认 4 个参数:
markdownthemefontSizebackgroundType
这篇文章就把它们一个个拆开讲。
1. markdown
这是唯一必须传的参数。
最简单的例子:
{
"markdown": "# 标题\n\n这是一段正文。"
}
什么时候会出错?
最常见的 3 类:
- 传了空字符串
- 字段名写错了
- 请求体不是合法 JSON
如果 markdown 为空,接口会直接拒绝。
2. theme
这个参数是可选的。
不传时,会自动走默认主题。
例如:
{
"markdown": "# 标题\n\n正文",
"theme": "default"
}
它的作用是什么?
它决定整体排版风格,比如:
- 标题颜色
- 正文字号基线
- 引用和代码块风格
- 高级模块在当前主题下的外观
最容易出错的点
通常是“主题名写错了”。
如果你写了一个不存在的名字,接口会直接返回主题无效。
最稳的做法:
- 先从
default开始 - 再切到你已经确认存在的主题
如果你要看主题名,可以直接去:
/theme-gallery/api-docs
3. fontSize
这个参数也是可选的。
现在常用的是 3 档:
smallmediumlarge
例如:
{
"markdown": "# 标题\n\n正文",
"fontSize": "large"
}
它适合什么时候改?
- 手机阅读想更轻松一点:可以试
large - 内容偏密集:一般先用
medium - 想更克制一点:再考虑
small
最重要的一点
不要把 fontSize 当成主题替代品。
它只能调字号节奏,不能替代主题风格。
4. backgroundType
这个参数也是可选的。
它决定最外层背景样式。
例如:
{
"markdown": "# 标题\n\n正文",
"backgroundType": "default"
}
它和 theme 的区别是什么?
theme决定文章风格backgroundType决定外层背景气质
简单理解:
- 主题更像“内容穿什么”
- 背景更像“文章放在什么底上”
最推荐的参数起步方式
如果你第一次接,不要上来就全开。
建议按这个顺序来:
第一步
{
"markdown": "# 标题\n\n正文"
}
第二步
{
"markdown": "# 标题\n\n正文",
"theme": "default"
}
第三步
{
"markdown": "# 标题\n\n正文",
"theme": "default",
"fontSize": "medium"
}
第四步
{
"markdown": "# 标题\n\n正文",
"theme": "default",
"fontSize": "medium",
"backgroundType": "default"
}
这样最好排查。
哪些值最容易传错?
1. 主题名
最常见错误之一。
比如你凭感觉写了一个主题名,但系统里根本没有,它就会直接报错。
2. 字号值
如果你传了一个系统不认识的值,也会失败。
最稳的是只用:
smallmediumlarge
3. 背景值
如果值不合法,系统会尽量兜底回默认背景。
但你最好还是传已经确认存在的值。
参数组合的实际建议
场景一:先追求稳定
{
"markdown": "# 标题\n\n正文",
"theme": "default"
}
场景二:想让手机阅读更舒服
{
"markdown": "# 标题\n\n正文",
"theme": "default",
"fontSize": "large"
}
场景三:已经确定排版风格
{
"markdown": "# 标题\n\n正文",
"theme": "github-readme",
"fontSize": "medium",
"backgroundType": "default"
}
参数检查清单
第一次接 md2wechat API,参数不要贪多。
先只记这件事:
markdown是正文theme是风格fontSize是字号backgroundType是外层背景
如果你先把这 4 个关系弄清楚,后面接口接起来会顺很多。
继续往下读: