// 云函数入口文件
//openapi.wxacode.createQRCode可以正常拿到传递过来的参数,但是用getUnlimitedAPI这个方法就拿不到参数
const cloud = require('wx-server-sdk')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV,
})
const uploadfile = async function(arraybuffer,path){
//console.log('我被调用了');
let {fileID} = await cloud.uploadFile({
cloudPath:path,
fileContent:arraybuffer
})
return fileID
}
// 云函数入口函数
exports.main = async (event, context) => {
try {
const result = await cloud.openapi.wxacode.createQRCode({
path: 'pages/index/index?a=1',
width: 430
})
console.log(result);
fileID = await uploadfile(result.buffer, 'my.jpg')
return fileID
}
catch (err) {
return err
}
}
下面这种就拿不到要传递的参数
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV,
})
const uploadfile = async function(arraybuffer,path){
console.log('我被调用了');
let {fileID} = await cloud.uploadFile({
cloudPath:path,
fileContent:arraybuffer
})
return fileID
}
// 云函数入口函数
exports.main = async (event, context) => {
//根据渠道名称进行数据库查询,如果存在(即二次点击),则返回文件艾迪
// console.log(event.namevalue);
//数据库查询不到该渠道,二维码即是第一次输入
try {
const result = await cloud.openapi.wxacode.getUnlimited({
scene: 'a=1'
})
// console.log(result);
fileID = await uploadfile(result.buffer, 'my.jpg')
return fileID
}
catch (err) {
return err
}
}
onLoad(options) { if (!options.scene) { this.setData({ ak: options.ak || app.globalData.query.ak || '', }) } else { var getQueryString = {} var strs = decodeURIComponent(options.scene).split('&') //以&分割 //取得全部并赋值 for (var i = 0; i < strs.length; i++) { getQueryString[strs[i].split('=')[0]] = unescape(strs[i].split('=')[1]) } this.setData({ ak: getQueryString['ak'] || '' }) } }
// 云函数入口文件
const cloud = require('wx-server-sdk');
cloud.init()
// 云函数入口函数
exports.main = async (event) => {
try {
// 生成小程序码
const wxcodeResult = await cloud.openapi.wxacode.getUnlimited({
scene: event.scene,
page: event.page,
width: 240
})
// return wxcodeResult;
if (wxcodeResult.errCode !== 0) {
// 生成二维码失败,返回错误信息
return wxcodeResult;
}
// 上传到云存储
const uploadResult = await cloud.uploadFile({
cloudPath: Date.now() + '.jpg',
fileContent: wxcodeResult.buffer
});
// return uploadResult;
if (!uploadResult.fileID) {
//上传失败,返回错误信息
return uploadResult;
}
// 获取图片临时路径
getURLReault = await cloud.getTempFileURL({
fileList: [uploadResult.fileID]
});
fileObj = getURLReault.fileList[0];
// 上传成功,获取文件临时url,返回临时路径的查询结果
return fileObj;
} catch (err) {
return err
}
}
参数获取使用options.query.scene 获得的值是a=1,自己拿到这个字符串后处理。
从昨天弄到现在快自闭了
我下面有两种方式的解析图片 ,所以原因有可能是传参的时候没传进去,但是我是按官网写的啊。。
上图是通过上面的第一种方法可以拿到参数a = 1
下图是通过上面的第二种方法拿不到参数a=1