1.在project.config.json 文件中添加
"miniprogramRoot": "/",
2.在项目根目录创建 functions 文件夹
3.右键点击文件夹 选着 新建Node.js云函数 我的云函数名字 叫 checkStr(可以自定义)
点击之后会生成这三个文件 如果没有 请手动添加
config.json
{
"permissions": {
"openapi": [
"security.msgSecCheck"
]
}
}
index.js
// 云函数入口文件 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.text?event.text:'1'
})
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: '调用security接口异常', data: err }
}
}
package.json
{
"name": "checkStr",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"wx-server-sdk": "~2.3.1"
}
}
4.右键点击 云函数文件夹 checkStr 实例文件夹 点击上传并部署:云端安装依赖(不上传node_modules)
上传成功之后再右键点击当前文件夹 点击本地调试 会跳出来云函数界面 勾选本地调试
5.在页面中使用
wx.cloud.init();
wx.cloud.callFunction({
name: 'checkStr',
data: {
text: e.detail.value?e.detail.value:'1'
// 这一步是处理输入框值手动清空的时候会被检测出敏感词,不知道什么原因抱歉
}
}).then((res) => {
if (res.result.code == "200") {
this.setData({
sendValue: e.detail.value
})
} else {
this.setData({
sendValue: ''
})
wx.showToast({
title: '包含敏感字哦。',
icon: 'none',
duration: 3000
})
}
})