vue项目中上传图片到阿里的oss

234 阅读1分钟
//上传图片到oss              path路径,如el-upload得到的路径
    static async putObject(path){
        const OSS = require('ali-oss')
        const client = new OSS({
            // yourregion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
            region: 'oss-cn-hangzhou',
            // 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录			  RAM控制台创建RAM用户。
            accessKeyId: 'LTAI5tEa...',
            accessKeySecret: 'ZW7xyUaSDyWY7hQFp...',
            // 填写Bucket名称。
            bucket: 'qianbo',
        });
        let url = '';
        async function put () {
            try {
                // 填写OSS文件完整路径和本地文件的完整路径。OSS文件完整路径中不能包含Bucket名称。
                // 如果本地文件的完整路径中未指定本地路径,则默认从示例程序所属项目对应本地路径中上传文件。
                const result = await client.put('el-upload'+ new Date().getMilliseconds() +'.png', path);
                console.log(result);
                url = result.url;
            } catch (e) {
                console.log(e);
            }
        }
        await put();
        return url;
    }