递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 7009|回复: 0
打印 上一主题 下一主题

[其它] 求封装一下阿里OSS操作,或者有详细封装教程吗

[复制链接]
跳转到指定楼层
楼主
匿名  发表于 2021-2-15 17:13:00 回帖奖励 |倒序浏览 |阅读模式

#include <alibabacloud/oss/OssClient.h>#include <fstream>using namespace AlibabaCloud::OSS;int main(void){    /* 初始化OSS账号信息 */    std::string AccessKeyId = "yourAccessKeyId";    std::string AccessKeySecret = "yourAccessKeySecret";    std::string Endpoint = "yourEndpoint";    std::string BucketName = "yourBucketName";    /* yourObjectName表示上传文件到OSS时需要指定包含文件后缀在内的完整路径,例如abc/efg/123.jpg*/    std::string ObjectName = "yourObjectName";    /* 初始化网络等资源 */    InitializeSdk();    ClientConfiguration conf;    OssClient client(Endpoint, AccessKeyId, AccessKeySecret, conf);    std::shared_ptr<std::iostream> content = std::make_shared<std::fstream>("yourLocalFilename", std::ios::in | std::ios::binary);    PutObjectRequest request(BucketName, ObjectName, content);    /*(可选)请参见如下示例设置存储类型及访问权限ACL*/    //request.MetaData().addHeader("x-oss-object-acl", "private");    //request.MetaData().addHeader("x-oss-storage-class", "Standard");    auto outcome = client.PutObject(request);    if (!outcome.isSuccess()) {            /* 异常处理 */            std::cout << "PutObject fail" <<        ",code:" << outcome.error().Code() <<        ",message:" << outcome.error().Message() <<        ",requestId:" << outcome.error().RequestId() << std::endl;            ShutdownSdk();            return -1;    }    /* 释放网络等资源 */    ShutdownSdk();        return 0;}
回复

使用道具

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-16 11:32 , Processed in 0.071627 second(s), 11 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表