收藏
回答

云函数中使用第三方npm(百度图像识别)时 ,报错

问题模块 框架类型 问题类型 终端类型 AppID 基础库版本
云开发 小程序 Bug 客户端 wx06fe17e100dfed55 2.2.5

云函数中使用第三方npm(百度图像识别)时,本地构建成功,并在云函数中选择“上传并部署:所有文件”

调试出现:Error: errCode: -404011 cloud function execution error | errMsg: cloud.callFunction:fail cloud function service error code -504002, error message Cannot find module 'wx-server-sdk'; at cloud.callFunction api; 



// 云函数入口文件 const cloud = require('wx-server-sdk') cloud.init() // 云函数入口函数 exports.main = async (event, context) => { const wxContext = cloud.getWXContext() var AipImageClassifyClient = require("baidu-aip-sdk").imageClassify; // 设置APPID/AK/SK var APP_ID = "xx"; var API_KEY = "xx"; var SECRET_KEY = "xx"; // 新建一个对象,建议只保存一个对象调用服务接口 var client = new AipImageClassifyClient(APP_ID, API_KEY, SECRET_KEY); var HttpClient = require("baidu-aip-sdk").HttpClient; // 设置request库的一些参数,例如代理服务地址,超时时间等 // request参数请参考 https://github.com/request/request#requestoptions-callback HttpClient.setRequestOptions({ timeout: 5000 }); // 也可以设置拦截每次请求(设置拦截后,调用的setRequestOptions设置的参数将不生效), // 可以按需修改request参数(无论是否修改,必须返回函数调用参数) // request参数请参考 https://github.com/request/request#requestoptions-callback HttpClient.setRequestInterceptor(function (requestOptions) { // 查看参数 console.log(requestOptions) // 修改参数 requestOptions.timeout = 5000; // 返回参数 return requestOptions; }); var fs = require('fs'); var image = fs.readFileSync("cai.jpg").toString("base64"); console.log("xxx") var cai; // 调用菜品识别 client.dishDetect(image).then(function (result) { console.log(JSON.stringify(result)); cai = JSON.stringify(result) }).catch(function (err) { // 如果发生网络错误 console.log(err); }); return { cai:cai } }
最后一次编辑于  2018-12-23  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • 墨水的墨
    墨水的墨
    2018-12-24

    我试试  谢谢啦

    2018-12-24
    赞同
    回复
  • 半寸灰
    半寸灰
    2018-12-24

    没安装

    wx-server-sdk


    npm  install  wx-server-sdk

    2018-12-24
    赞同
    回复