今天写了一个生成小程序码云函数,主要想在网页端生成小程序码,结果发现在网页端无法正常调用,提示的错误如下
"errCode":-501007,"errMsg":"wxacode.getUnlimited:fail Invalid request param"
但同样的代码在小程序端调用就可以正常生成小程序码,看一下云函数的调用日志,结果发现如下区别
网页端
返回结果
{"errCode":-501007,"errMsg":"wxacode.getUnlimited:fail Invalid request param"}
日志
START RequestId: ebe1e164-5ea4-11ea-88b1-5254003e0a60
Event RequestId: ebe1e164-5ea4-11ea-88b1-5254003e0a60
2020-03-05T05:48:21.339Z { scene: 'code=abc' }
小程序端
返回结果
[{"fileID":"xxxx","status":0,"errMsg":"ok","tempFileURL":"xxxxx"}]
日志
START RequestId: f09f51da-5ea4-11ea-8756-52540054168a
Event RequestId: f09f51da-5ea4-11ea-8756-52540054168a
2020-03-05T05:48:29.307Z { scene: 'id=abc',
userInfo:
{ appId: 'xxxxxx', openId: 'xxxx' } }
小程序端带了用户的信息,难道是这个生成小程序码的接口也需要带用户的信息?有人碰到同样的问题吗?怎么解决啊?
下面是云函数的代码,希望大神能帮忙看看
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
var scene = event.scene;
var page = event.page;
try {
const result = await cloud.openapi.wxacode.getUnlimited({
scene: "id=1",
isHyaline: true
})
// const upload = await cloud.uploadFile({
// cloudPath: "login/" + new Date().getTime() + '.jpg',
// fileContent: result.buffer,
// })
// var fileID = upload.fileID;
// const fileList = [fileID];
// const imgList = await cloud.getTempFileURL({
// fileList: fileList,
// })
return result
} catch (err) {
return err
}
}
还有个奇怪的问题,就是如果先在小程序端触发成功了,http也可以触发成功,但是始终无法在http端触发成功
网页端无法正常调用?你是指在网页端通过http触发云函数吗?