vue3中如何上传文件到腾讯云的桶(cosbrowser)

1.前提条件

要有腾讯云的账号(SecretId和SecretKey)和有存储文件的桶

2.引入插件

在入口文件index.html中引入

javascript 复制代码
<script src="https://up-load.obs.cn-south-1.myhuaweicloud.com/cos-js-sdk-v5.min.js"></script>

3.使用

javascript 复制代码
// 上传到腾讯云桶
function upLoadFileToCos(file,urlType,userOriginName) { // 参数1:文件对象,参数2:文件类型,参数3:用户自定义文件名
    let timeData = new Date()
    const objectkey = urlType == 1 ? (file.type || 'word') + '/' + completionDay(timeData) + '/' + Date.parse(timeData) + '/' + file.name : userOriginName

    let cos = new COS({ // 创建cos实例
        SecretId: 'AKIDRkqwoV5ScfXBcv1tYAndHh2ILBuSuBLR',
        SecretKey: 'zlcNvMbd5PYTEuTpyx0xgXN1XrAG8GYq',
    });
    cos.putObject( // 上传文件到桶
        {
            Bucket: "1039-files-1329215250" /* 填入您自己的存储桶(存储文件的桶名称),必须字段 */,
            Region: "ap-chongqing" /* 存储桶所在地域,例如ap-beijing,必须字段 */,
            Key: objectkey /* 存储在桶里的哪个文件夹中(例如:file/images/2024-02-09),自己随便定义,必须字段 */,
            StorageClass: "STANDARD", // 不清除,好像是存储分类,照写就行了
            Body: file, // 上传文件对象
            onProgress: function (progressData) { // 上传到桶后的回调函数
                // 上传成功 progressData.percent==1
            },
        },
        (err, data) => { // 上传失败
            console.log("data", data);
        }
    );
}
相关推荐
超绝大帅哥12 小时前
React的Fiber是什么? Vue为什么不需要Fiber ?
前端
yingyima12 小时前
正则表达式分组与捕获:凌晨3点服务器报警的解决方案
前端
swipe13 小时前
从 0 到 1 理解 React 虚拟列表:定高、不定高与 Canvas 版本完整拆解
前端·javascript·面试
铁皮饭盒13 小时前
Bun执行python代码
前端·javascript·后端
hunterandroid14 小时前
Service 与前台服务:让任务在后台持续运行
前端
米饭同学i14 小时前
深扒 LobsterAI 官网前端动效实现方案:从交互细节到代码实践
前端
前端啊14 小时前
告别 el-table 打印难题,vue3-print-el-table 来了!
前端·vue.js
JarvanMo14 小时前
AI时代跨平台还有必要吗?
前端
Patrick_Wilson14 小时前
幂等到底是什么?从前端视角讲透 SQL、HTTP 与 POST 接口的幂等设计
前端·后端·架构
凌览14 小时前
一人公司别再上 Jenkins,真不值
前端·后端