我严格按照你们的接口制作云函数,和调用openapi.security.imgSecCheck
我的云函数ID: 'xiao-ge-wu-qq0en'
我的云函数名是: imgSecCheck
我的云函数代码
const cloud = require( 'wx-server-sdk' ) cloud.init() // 云函数入口函数 exports.main = async (event, context) => { //const wxContext = cloud.getWXContext() try { var contentType = event.contentType; const result = await cloud.openapi.security.imgSecCheck({ media: { contentType: contentType ? contentType : 'image/png' , value: Buffer.from(event.value) } }); return result; } catch (err) { return err; } } |
调用云函数代码
wx.cloud.callFunction({ // 云函数名称 name: 'imgSecCheck' , // 传给云函数的参数 data: { contentType: 'image/' + fileType, value: buffer }, success: function (res) { wx.hideLoading(); if (res.result.errCode === 87014) { wx.showToast({ title: '高危险内容请重新上传' , icon: 'none' , duration: 4000 }) } else { that._uploadImage(key, filePath); } }, fail: function (res) { if (res.errCode) { wx.showToast({ title: '上传超时了,请压缩图片' , icon: 'none' , duration: 4000 }) } } }) |
Bug 的现象:
我上传了一张习主席的图片去检测,应该返回的是87014 但是返回的是-404010 . errMsg 是 "fail timeout for result fetching, result cannot be fetched anymore" 还有一些正常的图片也遇到这个问题。我的微信版本是7.0.5
附上我用来测试的图片
vConsole 的截屏
这个BUG 只是在生产环境中产生。在我的开发工具中没有这个问题,我上传习主席的图片后返回的是87014。 我的开发工具是最新版本。1.02.1907300.
请去定一下是不是已经知道的BUG,请给出建议怎么用openapi.security.imgSecCheck ?
我的建议是最好少用云函数。 这样会给你的项目多增加了一BUG 的变量。调试也花时间,文档不清晰,而且增加了对不可控方的依赖性。如果他们不修改,你只能把你的云函数的逻辑搬到,服务端,又要重新写。我现在有后悔引入了云函数。
看一下这个:https://developers.weixin.qq.com/community/develop/doc/0000e21fa2c860f4d86951b745100c
请问解决了吗,我这里也遇到
我这边也遇到了,求fix
麻烦提供一下appid和出现问题的时间