微信小程序调用图片安全API

什么是微信小程序调用图片安全API

微信小程序调用图片安全API是指使用微信官方提供的API服务来检测上传的图片是否营销、暴恐、色情、涉政、敏感词等违规内容,从而保障用户的使用安全和体验。

如何调用微信小程序图片安全API

1. 获取API密钥

在使用图片安全API之前,我们需要先在微信公众平台申请一个API密钥,申请步骤如下:

登录微信公众平台,在左侧菜单中选择“开发”

点击“开发者工具”,选择“API密钥”,在弹出窗口中填写相关信息并提交申请

审核通过后,系统将会生成一个API密钥和一个API秘钥

2. 调用图片安全API

在小程序中调用API接口,需要使用微信提供的wx.request()函数,具体代码如下:

wx.request({

url: 'https://api.weixin.qq.com/secapi/img/seccheck',

data: {

apikey: 'your_apikey', // 将your_apikey替换成申请得到的API密钥

media: 'your_image_url', // 将your_image_url替换成需要检测的图片URL地址

nonce_str: 'your_nonce_str', // 生成随机字符串

timestamp: Math.floor(Date.now() / 1000).toString() // 生成时间戳

},

method: "POST", // 使用POST请求方式

dataType: "json",

success: function(res){

console.log(res.data); // res.data中包含检测结果

},

fail: function(res){

console.log(res);

}

})

如何解析检测结果

图片安全API返回的检测结果是一个JSON字符串,包含以下字段:

errcode:错误码

errmsg:错误信息

conclusion:检测结果,枚举值为pass(图片正常)、review(需人工审核)和block(图片违规)

trace_id:每次请求的唯一标识

suggestion:建议处理方式,包括pass(不做处理)、delete(删除图片)和review(人工审核)

我们可以根据以上字段进行处理,代码如下:

wx.request({

url: 'https://api.weixin.qq.com/secapi/img/seccheck',

data: {

apikey: 'your_apikey',

media: 'your_image_url',

nonce_str: 'your_nonce_str',

timestamp: Math.floor(Date.now() / 1000).toString()

},

method: "POST",

dataType: "json",

success: function(res){

var result = JSON.parse(res.data); // 解析JSON字符串

if(result.conclusion == 'pass'){

console.log("图片正常");

}else if(result.conclusion == 'review'){

console.log("图片需人工审核");

}else if(result.conclusion == 'block'){

if(result.suggestion == 'delete'){ // 删除图片

console.log("图片违规,已删除");

}else if(result.suggestion == 'review'){ // 人工审核

console.log("图片违规,需人工审核");

}

}

},

fail: function(res){

console.log(res);

}

})

注意事项

调用图片安全API时,需要注意以下几点:

在调用API之前,必须先将图片上传至腾讯云COS,并获取图片的URL地址

在生成随机字符串nonce_str和时间戳timestamp时,需要保证与微信服务器时间一致

在调用API时,需要使用HTTPS协议进行加密传输,同时需要将API密钥和API秘钥进行加密签名

图片安全API的请求频率受到限制,每天最多只能发起5000次请求

总结

微信小程序调用图片安全API可以有效地检测图片中的违规内容,保障用户的使用安全和体验。在使用API时,需要注意调用方式和结果解析,同时注意请求频率的限制。