云服务器想自己写上传但是不知道region和bucket值
- 发布:2022-04-09 16:12
- 更新:2022-04-13 13:17
- 阅读:317
littleRookie (作者)
这是云函数的代码
'use strict';
exports.main = async (event, context) => {
//event为客户端上传的参数
const fs = require("fs");
let uploadinfo= event.body
let result = await uniCloud.uploadFile({
cloudPath: uploadinfo.name,
fileContent: fs.createReadStream(uploadinfo.filePath)
});
//返回数据给客户端
return result
};
这是uniapp代码
uni.chooseImage({
count: 1,
sourceType: [type],
sizeType: ['compressed'], //可以指定是原图还是压缩图,默认二者都有
success: (res) => {
let imageinfo = res
console.log
let now = new Date().getTime();
// 命名规则 发送账号id+时间戳+六位随机数+图片格式
let name =
this.userInfo.userId +
'_' +
now +
'_' +
Math.random()
.toString()
.slice(-6) +
'.' +
imageinfo.tempFilePaths[0].split('.').slice(-1)[0];
console.log(imageinfo)
let data={
name:name,
filePath: res.tempFilePaths[0]
}
uniCloud.callFunction({
name:'uploadimage',
data:data
}).then(res=>{
console.log(res)
}).catch(err=>{
console.log(err)
})
})
littleRookie (作者)
在非uniapp项目中去使用这个方法也是一样的报错,ValidationFailed:参数校验错误: Invalid options.filePath这个错误
vue项目代码
createimagemsg(message) {
console.log(111);
// 命名规则 发送账号用户名+时间戳+六位随机数+图片格式
let imgtype = message.image.name.split('.').slice(-1)[0];
let imagename =
this.chatinfo.userinfo.name +
'_' +
message.image.lastModified +
'_' +
Math.random()
.toString()
.slice(-6) +
'.' +
imgtype;
axios
.post('https://14c6d1dc-f146-4fd9-a7fb-770bb76c2eff.bspapp.com/uploadimage', {
name: imagename,
filePath: message.url
})
.then(res => {
console.log(res);
})
.catch(function() {
alert('网络超时, 请重新加载!');
});
},
-
然后你在云函数里面直接把message.url上传到云存储?云函数里面怎么写的呢?建议看一下这个文档:https://uniapp.dcloud.net.cn/uniCloud/storage.html#clouduploadfile
2022-04-13 13:37
-
littleRookie (作者)
回复 DCloud_uniCloud_WYQ: 这个message.url是本地文件的路径,你看看我上面发的那一条,我用uni.chooseImage选择的文件也不能通过云函数传上去,我现在的需求就是在非uniapp的项目中,能把本地文件上传到unicloud的云存储中,不知道你们官方支不支持这种方式,如果不支持的话我们可能就直接购买阿里云的服务器接入你们的unicloud了
2022-04-13 15:12
littleRookie (作者)
那如何将其他项目中的文件上传到unicloud的服务器呢,云函数我试过了,一直报 ValidationFailed:参数校验错误: Invalid options.filePath这个错误
2022-04-13 09:29
DCloud_uniCloud_WYQ
回复 littleRookie: 完整的代码贴出来
2022-04-13 12:35
littleRookie (作者)
回复 DCloud_uniCloud_WYQ:我贴在下面了,你看下
2022-04-13 13:12