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);
        }
    );
}
相关推荐
星栈13 小时前
Dioxus 多页面怎么做:`dioxus-router`、嵌套路由、`Outlet` 和页面组织,一篇给你讲顺
前端·rust·前端框架
用户9874092388713 小时前
用 Remotion + edge-tts 打造中文教学视频全自动流水线
前端
风骏时光牛马13 小时前
Less前端工程化实战:变量混合器与项目样式分层落地
前端
假如让我当三天老蒯13 小时前
Options API(选项式 API) 和 Composition API(组合式 API)
前端·vue.js·面试
SameX13 小时前
iOS 独立开发实践:用 MapKit + 像素渲染实现 Citywalk 轨迹地图 App「雁过留痕」
前端
_柳青杨13 小时前
一文吃透 Node.js 事件循环:从原理到 Node 20+ 重大变更
javascript·后端
skyey13 小时前
页面加载时,深色模式闪白的问题解决
前端
IT_陈寒14 小时前
Java 并行流把我坑惨了,这6小时加班值了
前端·人工智能·后端
anOnion1 天前
构建无障碍组件之Menu Button pattern
前端·html·交互设计
用户47949283569151 天前
claude Fable用不了?把Gpt 5.5pro接到你的claude code里
前端·后端