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);
        }
    );
}
相关推荐
左右用AI2 分钟前
每周1亿次下载的axios被投毒了,但是源码里没有一行恶意代码!
前端·后端
英俊潇洒美少年7 分钟前
前端模块化 AMD、CMD、CommonJS、ESM的差异对比
前端
攀登的牵牛花10 分钟前
Claude Code 泄露事件复盘:前端发布流程哪里最容易翻车
前端·github·claude
D_C_tyu18 分钟前
vue3 + vue3-print-nb 插件实现打印功能
前端·javascript·vue.js
paul_chen2118 分钟前
Vite + Vue SPA 在子路径部署(内外网访问+Nginx 反向代理)
前端·vue.js·nginx
星如雨グッ!(๑•̀ㅂ•́)و✧20 分钟前
Reactor背压
java·服务器·前端
笑笑先生27 分钟前
从接口搬运工到研发控制平面,BFF 到底在解决什么?
前端·架构·node.js
霪霖笙箫28 分钟前
「JS全栈AI Agent学习」二、反思、工具使用、规划——让 Agent 从"执行者"变成"自主完成者"
前端·agent·ai编程
前端缘梦29 分钟前
Next.js全栈项目部署全流程|从0到1解决数据库、WebSocket、图片上传所有坑
前端·全栈·next.js
www_stdio30 分钟前
🚀 从 Event Loop 到 AI Agent:我的 Node.js 全栈进阶之路
前端·node.js·nestjs