初始化请求

本SDK提供ufile_sdk_initialize方法用于初始化SDK相关配置,完整代码详见 Github

方法原型

1
struct ufile_errorufile_sdk_initialize(const struct ufile_config cfg, int open_verbose);

参数说明

  • cfg: 用于SDK初始化的配置信息,包含公私钥、bucket_host和file_host;
  • open_verbose: 表示输出 curl 的相关 http 请求信息到 stdout。1 表示打印,0 表示不打印。

ufile_sdk_initialize中进行了内存分配,若初始化后不再使用本 sdk 相关接口,请调用ufile_sdk_cleanup接口进行释放。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "../lib/api.h"
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]){
    struct ufile_config cfg;
    cfg.public_key = getenv("UFILE_PUBLIC_KEY");
    cfg.private_key = getenv("UFILE_PRIVATE_KEY");
    cfg.bucket_host = getenv("UFILE_BUCKET_HOST");
    cfg.file_host = getenv("UFILE_FILE_HOST");
    // 初始化SDK
    struct ufile_error error;
    error = ufile_sdk_initialize(cfg, 0);
    if(UFILE_HAS_ERROR(error.code)){
        ufile_sdk_cleanup();
        printf("初始化 sdk 失败,错误信息为:%s\n", error.message);
        return 1;
    }
   
    /*
    do something with sdk
    */
    
    // 释放初始化SDK时分配的内存
    ufile_sdk_cleanup();
    return 0;
}