最新文章
微信小程序内容安全检测接口使用指南
wxa/msg_sec_checkhttps://api.weixin.qq.com/wxa/msg_sec_check?access_token=ACCESS_TOKEN// 获取access_token的示例代码
const getAccessToken = async () => {
const appid = '你的小程序AppID';
const secret = '你的小程序AppSecret';
const response = await fetch(`https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${appid}&secret=${secret}`);
const data = await response.json();
if (data.access_token) {
return data.access_token;
} else {
throw new Error(`获取access_token失败: ${data.errmsg}`);
}
};// 内容安全检测函数
const checkContentSafety = async (content) => {
try {
const accessToken = await getAccessToken();
const response = await fetch(`https://api.weixin.qq.com/wxa/msg_sec_check?access_token=${accessToken}`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
content: content
})
});
const result = await response.json();
// 处理返回结果
if (result.errcode === 0) {
return { isSafe: true, message: '内容安全' };
} else if (result.errcode === 87014) {
return { isSafe: false, message: '内容含有违法违规信息' };
} else {
return { isSafe: false, message: `检测失败: ${result.errmsg}` };
}
} catch (error) {
return { isSafe: false, message: `请求异常: ${error.message}` };
}
};// 表单提交处理
const handleSubmit = async (event) => {
event.preventDefault();
const content = document.getElementById('userInput').value;
// 显示检测中状态
showLoadingState();
// 调用安全检测
const safetyResult = await checkContentSafety(content);
if (safetyResult.isSafe) {
// 内容安全,继续提交
submitForm(content);
} else {
// 内容违规,提示用户
showErrorMessage(safetyResult.message);
}
};
// 绑定提交事件
document.getElementById('submitBtn').addEventListener('click', handleSubmit);// 评论提交前的检测
const checkComment = async (commentText) => {
const safetyCheck = await checkContentSafety(commentText);
if (!safetyCheck.isSafe) {
alert('您的评论包含违规内容,请修改后重新提交');
return false;
}
return true;
};// 用户修改昵称时的检测
const checkNickname = async (nickname) => {
if (nickname.length < 2 || nickname.length > 20) {
return { valid: false, message: '昵称长度应在2-20个字符之间' };
}
const safetyCheck = await checkContentSafety(nickname);
if (!safetyCheck.isSafe) {
return { valid: false, message: '昵称包含违规内容' };
}
return { valid: true, message: '昵称可用' };
};












冀公网安备