收藏
回答

安全内容security.imgSecCheck还一直报错47001,照搬官方教程也不行!?

麻烦大神帮忙看一下,说格式错了!蒙圈!我可是照搬官方教程啊!!
云函数:
const cloud = require('wx-server-sdk')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
    console.log("event.img:::::::::::::::::::")
    console.log(event.img);
    //定义常量   (等待完成 从云存储空间下载文件({云文件ID: 传来的参数})
    const imgmsg = (await cloud.downloadFile({
        fileID: event.img,
    })).fileContent;       //取出文件内容(数据类型Buffer二进制)
    console.log("imgmsg:::::::::::::::::::")
    console.log(imgmsg);
    //调用接口security.imgSecCheck (校验一张图片是否含有违法违规内容)
    return cloud.openapi.security.imgSecCheck({
        media: {
            contenType: 'image/png',  //数据类型
            value:imgmsg    //传入文件的 Buffer
        }
    })
}
返回结果
{"errorCode":1,"errorMessage":"user code exception caught","stackTrace":"Error: errCode: 47001  | 
errMsg: openapi.security.imgSecCheck:fail data format error rid: 61297c8e-346fc71a-4662d736\n   
 at callWXOpenAPI (/var/user/node_modules/wx-server-sdk/index.js:2392:31)\n   
 at process._tickCallback (internal/process/next_tick.js:68:7)","statusCode":430}
日志
START
event.img:::::::::::::::::::
cloud://appdev-8g5cq5fy00d753fb.6170-appdev-8g5cq5fy00d753fb-1304161530/example.png
当前未指定env,将默认使用第一个创建的环境!
imgmsg:::::::::::::::::::
{
  "type": "Buffer",
  "data": [
    137,
    80,
    78,
    71,
......................
回答关注问题邀请回答
收藏

2 个回答

  • 社区运营专员-wetingtu
    社区运营专员-wetingtu
    2021-08-30

    你好,报错47001,数据格式错误。

    可参考:https://developers.weixin.qq.com/community/develop/article/doc/00062c5c7a8ec834dc692913156013

    https://developers.weixin.qq.com/community/develop/article/doc/00024a78ec00188a565a19c545b013

    2021-08-30
    有用
    回复 1
    • 琥珀果
      琥珀果
      2021-12-24
      麻烦帮忙看下我遇到的问题呗。。。我在下面回复了
      2021-12-24
      回复
  • 琥珀果
    琥珀果
    2021-12-24
    requests.post(url, files={'media': open('tmp.jpg','rb')}).json()
    
    requests.post(url, files={'media': (requests.get("img_url").content)},headers={'Content-Type': 'multipart/form-data'}).json()
    


    我用python调用图片的检测, url是拼接了token之后的请求地址。以上两种方式都返回错误47001。我目前的场景不能直接把小程序前端上传的图片直接去调用微信检测。请问下我这个场景下要怎么做。

    2021-12-24
    有用
    回复 1
    • 琥珀果
      琥珀果
      2021-12-24
      我的方式今天可以了。 这两个代码都测试了一下都通过了。怀疑是我当时使用的两张图片的问题。
      2021-12-24
      回复
登录 后发表内容