VS2017使用阿里云OSS C++ SDK 上传、下载、删除、列举文件

一、安装OSS C++ SDK 具体操作参照阿里云官方文档: 安装 OSS C++ SDK 注意点: […]

2020年5月31日

一、安装OSS C++ SDK

具体操作参照阿里云官方文档: 安装 OSS C++ SDK

注意点:

1.cmake 32位或者64位 VS2017里面生成解决方案的位数也要跟cmake的一样 否则报错

2.VS2017需要以管理员身份运行

二、导库(以64位为例)

1.新建一个项目 - TestOSSDemo,右键“属性”,选择“C/C++”->“常规”,在附加包含目录处添加安装后的头文件所在路径:

D:\aliyun-oss-cpp-sdk-master\sdk\src
D:\aliyun-oss-cpp-sdk-master\sdk\include
D:\aliyun-oss-cpp-sdk-master\third_party\include

2.选择“链接器”->“常规”,在附加库目录处添加 .lib 文件所在路径:

D:\aliyun-oss-cpp-sdk-master\build\lib\Debug
D:\aliyun-oss-cpp-sdk-master\third_party\lib\x64

3.选择“连接器”->“输入”,在附加依赖项处添加 .lib 文件(alibabacloud-oss-cpp-sdk.lib、libcurl.lib、libeay32.lib、ssleay32.lib):在框内手动输入

三、TestOSSDemo上传文件代码

// OSSTestDemo.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>

#include <alibabacloud/oss/OssClient.h>

using namespace AlibabaCloud::OSS;

int main()
{
    /* 初始化OSS账号信息 */
    /* 如何获取AccessKeyId和AccessKeySecret:
    https://help.aliyun.com/knowledge_detail/48699.html
    */
    std::string AccessKeyId = "YourAccessKeyId";
    std::string AccessKeySecret = "YourAccessKeySecret";

    /* 根据文档填写所需Endpoint:
    https://help.aliyun.com/document_detail/31837.html?spm=a2c4g.11186623.6.586.48977f5ev3c5Ht
    */
    std::string Endpoint = "oss-cn-shenzhen.aliyuncs.com";
    /* 填写你的存储空间名/
    std::string BucketName = "YourBucketName";
    /* yourObjectName表示上传文件到OSS时需要指定包含文件后缀在内的完整路径,下面为image文件夹下的bkg1.png文件 */
    std::string ObjectName = "image/bkg1.png";

    /* 初始化网络等资源 */
    InitializeSdk();

    ClientConfiguration conf;
    OssClient client(Endpoint, AccessKeyId, AccessKeySecret, conf);

    /* 上传文件 */
    /* yourLocalFilename由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt */
    auto outcome = client.PutObject(BucketName, ObjectName, "D:/bkg1.png");

    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;
}

注意点:TestOSSDemo运行目录下需要放D:\aliyun-oss-cpp-sdk-master\third_party\lib\x64路径下的四个DLL文件

以64位为例

TestOSSDemo\x64\Debug目录下放以下四个dll文件:

在这里插入图片描述

运行后在OSS控制台可以查看到上传的文件:

在这里插入图片描述

四、其他API使用

其他 API 使用大同小异,照着官方文档一步步配置就可以完成。

在这里插入图片描述

打赏 0

共有 0 条评论