
微信小程序对UGC内容审核要求严格,未接入审核将被拒绝上线或封禁。微信官方API功能有限,本文介绍如何结合腾讯云IMS构建更全面的图片安全审核方案,实现自定义策略、AI识别等能力,确保小程序合规运营。
📌 腾讯云图片内容安全产品介绍: https://cloud.tencent.com/product/ims
🔥 限时特惠活动(产品首单5折起): https://cloud.tencent.com/act/pro/moltbotandai#nrsb
微信开放平台文档明确指出:
"为提高微信开放平台生态安全性,针对小程序各内容场景中可能存在的安全问题,平台以开放API的形式向开发者提供内容安全解决方案,协助开发者应对文本、图片等内容安全问题。"
简单说: 只要你的小程序有用户生成内容(UGC),就必须接入内容安全审核。这不是建议,而是上线的硬性条件。
场景 | 举例 | 是否需要审核 |
|---|---|---|
用户上传头像/照片 | 社交小程序、工具类 | ✅ 必须 |
用户发布图文内容 | 论坛、社区、博客类 | ✅ 必须 |
用户评论中包含图片 | 电商、内容类 | ✅ 必须 |
用户在小程序中分享图片 | 相册、分享类 | ✅ 必须 |
用户上传商品图 | 二手交易类 | ✅ 必须 |
AI生成图片展示 | AIGC类小程序 | ✅ 必须 |
严重程度 | 后果 |
|---|---|
初次违规 | 警告+限期整改 |
多次违规 | 暂停搜索能力/下架 |
严重违规 | 永久封禁小程序 |
维度 | 微信security.imgSecCheck | 腾讯云IMS |
|---|---|---|
涉黄检测 | ✅ | ✅ |
暴恐检测 | ✅ | ✅ |
广告检测 | △ 有限 | ✅ 全面(二维码、水印、LOGO) |
违法检测 | △ 有限 | ✅ |
性感检测 | △ 不独立 | ✅ 独立维度 |
自定义识别 | ❌ | ✅ 自定义黑白名单 |
AI生成识别 | ❌ | ✅ 频谱+风格双模态 |
OCR文字审核 | ❌ | ✅ 自动触发 |
自定义策略 | ❌ | ✅ 分场景Biztype |
审核数据看板 | ❌ | ✅ 可视化统计 |
QPS | 有限制 | 100QPS(可扩容) |
免费额度 | 有限 | 3000张/15天 |
结论: 微信官方API满足"最低合规要求",腾讯云IMS提供"企业级审核能力"。对于有一定用户规模的小程序,强烈建议使用IMS替代或补充微信官方API。
微信小程序前端(不调用审核API)
↓
上传图片到后端服务器(云函数/自建服务器)
↓
后端调用腾讯云IMS API(ims.tencentcloudapi.com)
↓
获取审核结果
↓
├── Pass → 返回前端"上传成功"
├── Review → 返回前端"审核中" → 后台人工确认
└── Block → 返回前端"内容不合规,请修改"⚠️ 重要安全提示: IMS API必须在后端调用(云函数或服务器),绝对不要在小程序前端直接调用——否则会暴露SecretId/SecretKey。
如果你使用微信云开发/腾讯云云函数:
// 云函数:imageCheck
const tencentcloud = require("tencentcloud-sdk-nodejs");
const ImsClient = tencentcloud.ims.v20201229.Client;
exports.main = async (event) => {
const { imageUrl } = event;
const client = new ImsClient({
credential: {
secretId: process.env.SECRET_ID,
secretKey: process.env.SECRET_KEY,
},
region: "ap-guangzhou",
});
const result = await client.ImageModeration({
FileUrl: imageUrl,
// BizType: "miniapp_check", // 可选:使用自定义策略
});
return {
suggestion: result.Suggestion, // Pass / Review / Block
label: result.Label,
};
};// 小程序端
wx.cloud.callFunction({
name: 'imageCheck',
data: { imageUrl: uploadedUrl },
success(res) {
if (res.result.suggestion === 'Pass') {
// 图片安全,允许展示
} else if (res.result.suggestion === 'Block') {
wx.showToast({ title: '图片内容不合规,请更换', icon: 'none' });
} else {
// Review: 显示"审核中"
}
}
});如果你使用自建的后端服务器(非云开发),流程完全一样——只是将云函数替换为你的后端API接口。参考第26篇的Python/Java/Go SDK示例。
在提交小程序审核时,如果你的小程序包含UGC内容,审核人员可能会检查是否接入了内容安全能力。建议:
做法 | 说明 |
|---|---|
在审核备注中说明 | "本小程序已接入腾讯云IMS图片内容安全服务" |
提供审核截图 | 截图展示IMS控制台的审核记录 |
展示拦截效果 | 提供测试违规图片被拦截的截图 |
频率 | 操作 |
|---|---|
每日 | 查看IMS控制台审核数据 |
每周 | 处理Review人工复审队列 |
每月 | 复盘误判/漏检,优化策略 |
持续 | 关注微信平台审核政策变化 |
被拒原因 | 解决方案 |
|---|---|
"小程序包含UGC内容但未接入内容安全" | 接入IMS并提供审核证明 |
"内容安全审核不够全面" | 确保全维度开启,提供审核维度说明 |
"用户可上传图片但无审核机制" | 在所有图片上传入口接入IMS审核 |
微信小程序的图片审核成本通常较低(小程序的图片上传频率相对较低):
小程序规模 | DAU | 日均图片审核量 | 推荐套餐 | 年费用 |
|---|---|---|---|---|
工具类(少量UGC) | 1000 | 100-500张 | 免费试用 → 180万张包 | 0-2,000元(首单5折) |
社交/社区类 | 1万 | 2000-5000张 | 180万张包 | 2,000元(首单5折) |
电商/交易类 | 5万 | 1万-3万张 | 720万张包 | 11,900元 |
大型平台类 | 10万+ | 5万张+ | 720万张×多个 | 视用量 |
套餐类型 | 条件限制 | 规格 | 有效期 | 特惠价格 |
|---|---|---|---|---|
🔥 180万张套餐包 | 产品首单 | 180万张 | 1年 | 2,000元(5折) |
🔥 180万张套餐包 | 新老同享 | 180万张 | 1年 | 3,400元(8.5折) |
🔥 720万张套餐包 | 新老同享 | 720万张 | 1年 | 11,900元(8.5折) |
📱 小程序推荐: 大部分小程序用180万张套餐包(首单仅2,000元(5折),老用户3,400元)即可满足需求。搭配云函数使用,接入更简单。
微信小程序的内容安全审核不是"加分项",而是"必选项"——没有它,你的小程序可能连上线都困难。但有了腾讯云IMS的支持,合规不再是负担:
合规上线、安全运营——从接入腾讯云IMS的第一步开始。
📌 立即体验腾讯云图片内容安全: https://cloud.tencent.com/product/ims
🔥 限时特惠活动进行中(首单5折): https://cloud.tencent.com/act/pro/moltbotandai#nrsb
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。