初始化/关闭SDK
使用C SDK的应用程序必须先进行初始化,然后再进行其他SDK的api调用,最后在应用程序终止之前必须关闭SDK:
S3_initialize("s3", S3_INIT_ALL, host);
{
// 在此调用SDK
}
S3_deinitialize();
S3Status S3_initialize(const char *userAgentInfo, int flags,
const char *defaultS3HostName);
参数:
参数名 | 类型 | 说明 |
---|---|---|
userAgentInfo | const char * | 请求中的User-Agent header |
flags | Int | 初始化S3依赖库的标志。一般使用S3_INIT_ALL初始化所有库 |
defaultS3Hostname | const char * | 默认服务地址 |
返回值:
返回值 | 说明 |
---|---|
S3StatusOK | 成功 |
S3StatusUriTooLong | defaultS3Hostname长于S3_MAX_HOSTNAME_SIZE规定的值 |
S3StatusInternalError | 依赖库初始化失败 |
S3StatusOutOfMemory | 内存不足 |
以下代码封装了初始化结果的判断操作:
void S3_init()
{
S3Status status;
const char *hostname = "your_host_name";
if ((status = S3_initialize("s3", S3_INIT_ALL, hostname))
!= S3StatusOK) {
fprintf(stderr, "Failed to initialize libs3: %s\n",
S3_get_status_name(status));
exit(-1);
}
}
void S3_deinitialize();