在这里插入图片描述

1.复制源码文件中的 cos-wx-sdk-v5.js 到自己小程序代码根目录下任意路径,并用相对路径引用:

复制源码文件中的 cos-wx-sdk-v5.js 到自己小程序代码根目录下任意路径,并用相对路径引用

var COS = require('./lib/cos-wx-sdk-v5.js')

2.创建一个COS.JS文件

const COS=require("./cos-wx-sdk-v5.js")
const Bucket="";//存储桶的名称,命名规则为 BucketName-APPID,此处填写的存储桶名称必须为此格式
const Region="";//存储桶所在地域
//创建一个 COS SDK 实例
// SECRETID 和 SECRETKEY请登录 https://console.cloud.tencent.com/cam/capi 进行查看和管理
const cos = new COS({
  SecretId: '',
  SecretKey: '',
});
//创建存储桶
cos.putBucket({
  Bucket:Bucket,
  Region: Region,
}, function (err, data) {
  console.log(err || data);
});

//查询存储桶列表
cos.getService(function (err, data) {
	console.log("[查询存储桶列表]")
  console.log(data && data.Buckets);
});
//删除

function deleteFileToTencentClound(Key){
	return new Promise((resolve,reject)=>{
		cos.deleteObject({
		  Bucket:Bucket,
		  Region: Region,
		  Key: Key,
		}, function (err, data) {
		  console.log(err || data);
		  resolve(data)
		});
	})
}
//上传图片到腾讯云
function uploadFileToTencentClound(filename,filePath){
	return new Promise((resolve,reject)=>{
		cos.postObject({
		    Bucket: Bucket,
		    Region: Region,
		    Key: 'wxFile/' + filename,
		    FilePath: filePath,
		    onProgress: function (info) {
		        console.log("[cos.postObject-seccess]",JSON.stringify(info));
		    }      
		}, 
		function (err, data) {
		    console.log("[cos.postObject-err]",err || data);
			resolve(data.headers.location)
		})
	})
}
export default {
	uploadFileToTencentClound,
	deleteFileToTencentClound
}

3.页面中调用

uni.chooseImage({
				    count: 1, //默认9
				    sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
				    sourceType: ['album'], //从相册选择
				    success: function (res) {
						let filePath = res.tempFiles[0].path;
						let filename = filePath.substr(filePath.lastIndexOf('/') + 1);
						COS.uploadFileToTencentClound(filename,filePath).then((res)=>{
							console.log("[修改头像]",res)
							that.avatarUrl=res
						})
				    }
				});
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐