小程序开发中,经常会遇到标题,备注,详细信息等各种文本输入展示,如果不加后台审核的就直接展示给用户的话,就会涉及到敏感信息的检测问题。为了安全起见,微信小程序后台不支持api.weixin.qq.com配置https请求,所以需要在服务端做内容检测。我们这里分享一下小程序云函数提供的验证接口和使用方式。
1、新建云函数:sec_check
2、云函数目录下新建config.json文件,添加函数调用权限
-
{
-
"permissions":{
-
"openapi":[
-
"security.msgSecCheck"
-
]
-
}
-
}
-
3、调用微信官方提供的验证方法:openapi.security.msgSecCheck
-
// 云函数入口文件 index.js
-
const cloud =require('wx-server-sdk')
-
cloud.init()
-
// 云函数入口函数
-
exports.main = async (event, context)=>{
-
const wxContext = cloud.getWXContext()
-
try{
-
const result = await cloud.openapi.security.msgSecCheck({
-
content:event.content
-
})
-
if(result && result.errCode.toString()==='87014'){
-
return{ code:500, msg:'内容异常,请修改', data: result }
-
}else{
-
return{ code:200, msg:'ok', data: result }
-
}
-
}catch(err){
-
// 错误处理
-
if(err.errCode.toString()==='87014'){
-
return{ code:500, msg:'内容异常,请修改', data: err }
-
}
-
return{ code:502, msg:'其他异常', data: err }
-
}
-
}
4、小程序调用云函数
-
wx.cloud.init();
-
wx.cloud.callFunction({
-
name:'sec_check',
-
data:{
-
content:'检测文本'
-
}
-
}).then((res)=>{
-
console.log(res.result.code + res.result.msg)
-
})