Halo CMS对接微信小程序,内容同步展示

先理清同步思路

Halo CMS 本身是一个博客/内容管理系统,微信小程序不能直接读取它的数据库。
可行方式是让 Halo 暴露文章接口,小程序端用 wx.request 拉取 JSON 数据再渲染。
Halo 2.x 默认提供内容 API,通常需要先在后台生成个人令牌(Personal Access Token),再通过 /apis/api.content.halo.run/v1alpha1/posts 这类地址获取文章列表。
最终效果是:你在 Halo 发布文章,小程序下拉刷新后能看到新内容。

准备条件与后台配置

开始前确认三件事:Halo 站点已能正常访问、小程序已注册并拿到 AppID、服务器允许外部请求 API 域名。

登录 Halo 后台,进入 用户 → 个人令牌,新建一个令牌,权限至少勾选文章读取相关范围。
复制生成的令牌字符串,它只在创建时显示一次。

接着确认 API 地址。
常见形式如下,实际路径以你 Halo 版本和控制台显示为准:

https://你的域名/apis/api.content.halo.run/v1alpha1/posts

在服务器上用 curl 验证接口是否可访问:

curl -H "Authorization: Bearer 你的令牌" \
  "https://你的域名/apis/api.content.halo.run/v1alpha1/posts?page=1&size=10"

如果返回 JSON 且包含 items 字段,说明接口通了。
若返回 401,检查令牌是否复制完整;
返回 404,检查路径和 Halo 版本。

小程序端拉取与渲染

微信小程序要求请求域名加入白名单。
进入 微信公众平台 → 开发 → 开发管理 → 服务器域名,把 Halo 的域名加到 request合法域名。

在小程序页面的 js 中发起请求:

wx.request({
  url: 'https://你的域名/apis/api.content.halo.run/v1alpha1/posts?page=1&size=10',
  header: {
    'Authorization': 'Bearer 你的令牌'
  },
  success(res) {
    console.log(res.data.items)
  }
})

拿到数据后,用 wx:for 渲染列表,点击跳转到详情页时再请求单篇文章接口。
详情接口通常类似:

https://你的域名/apis/api.content.halo.run/v1alpha1/posts/文章name

注意:令牌不要写在小程序前端代码里直接提交到公开仓库,更稳妥的做法是让小程序请求你自己的后端,由后端转发并携带令牌。

容易踩坑的地方

  • 域名必须 HTTPS:微信小程序正式环境只允许 https 请求,HTTP 或自签名证书会失败。
  • 令牌权限不足:只勾选部分权限时,文章列表能读、详情读不到是常见现象,建议先给足读取范围再收紧。
  • 跨域与 CDN:如果 Halo 前面套了 CDN 或 Nginx,要确认 /apis/ 路径没有被拦截或缓存。
  • 分页参数:不同版本对 page、size 的默认值可能不同,建议显式传参。
  • 内容格式:Halo 返回的正文可能是 HTML 或 Markdown,小程序 rich-text 组件对 HTML 支持有限,必要时在后端转成纯文本或分段结构。

验证同步是否成功

在 Halo 后台新发一篇文章,回到小程序下拉刷新。
如果列表出现新标题,点进详情能看到正文,说明同步链路正常。
再检查图片是否能加载,图片域名同样要加入小程序白名单。

如果列表没更新,先在小程序开发者工具里看 Network 面板的请求状态码和返回体。
200 但数据为空,多半是权限或分页问题;
401 查令牌;
404 查接口路径。

常见疑问

Halo 版本不同接口会变吗? 会。
Halo 2.x 与后续版本在 API 路径和权限命名上可能有调整,建议以你后台实际显示的接口和控制台文档为准。

能不能不用令牌直接读? 部分公开站点可以匿名读取公开文章,但一旦涉及草稿或权限控制,就需要令牌。
生产环境建议走令牌加后端转发。

同步是实时的吗? 取决于小程序端请求频率。
Halo 发布后接口数据立即变化,小程序需要主动刷新或定时拉取才能看到最新内容。

分享到:
上一篇
Discuz防注册机,邮箱手机验证策略
下一篇
Halo评论邮件通知,用户回复提醒功能
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意