生成预签名链接

最后更新时间:2020-08-24 16:52:10

    简介

    本文档提供关于生成对象预签名链接的示例代码。

    SDK API 参考

    SDK 所有接口的具体参数与方法说明,请参考 SDK API

    生成对象预签名链接

    示例代码一:生成预签名上传链接

    Objective-C

    QCloudGetPresignedURLRequest* getPresignedURLRequest = [[QCloudGetPresignedURLRequest alloc] init];
    
    // 存储桶名称,格式为 BucketName-APPID
    getPresignedURLRequest.bucket = @"examplebucket-1250000000";
    
    // 使用预签名 URL 的请求的 HTTP 方法。有效值(大小写敏感)为:@"GET"、@"PUT"、@"POST"、@"DELETE"
    getPresignedURLRequest.HTTPMethod = @"PUT";
    
    // 对象键,是对象在 COS 上的完整路径,如果带目录的话,格式为 "dir1/object1"
    getPresignedURLRequest.object = @"exampleobject";
    
    [getPresignedURLRequest setFinishBlock:^(QCloudGetPresignedURLResult * _Nonnull result,
                                             NSError * _Nonnull error) {
    
        // 预签名 URL
        NSString* presignedURL = result.presienedURL;
    
    }];
    
    [[QCloudCOSXMLService defaultCOSXML] getPresignedURL:getPresignedURLRequest];

    说明:

    更多完整示例,请前往 GitHub 查看。

    Swift

    let getPresign  = QCloudGetPresignedURLRequest.init();
    
    // 存储桶名称,格式为 BucketName-APPID
    getPresign.bucket = "examplebucket-1250000000" ;
    
    // 使用预签名 URL 的请求的 HTTP 方法。有效值(大小写敏感)为:
    // @"GET"、@"PUT"、@"POST"、@"DELETE"
    getPresign.httpMethod = "PUT";
    
    // 对象键,是对象在 COS 上的完整路径,如果带目录的话,格式为 "dir1/object1"
    getPresign.object = "exampleobject";
    getPresign.setFinish { (result, error) in
        if let result = result {
            let url = result.presienedURL
        } else {
            print(error!);
        }
    }
    QCloudCOSXMLService.defaultCOSXML().getPresignedURL(getPresign);

    说明:

    更多完整示例,请前往 GitHub 查看。

    示例代码二:生成预签名下载链接

    Objective-C

    QCloudGetPresignedURLRequest* getPresignedURLRequest = [[QCloudGetPresignedURLRequest alloc] init];
    
    // 存储桶名称,格式为 BucketName-APPID
    getPresignedURLRequest.bucket = @"examplebucket-1250000000";
    
    // 使用预签名 URL 的请求的 HTTP 方法。有效值(大小写敏感)为:@"GET"、@"PUT"、@"POST"、@"DELETE"
    getPresignedURLRequest.HTTPMethod = @"GET";
    
    // 对象键,是对象在 COS 上的完整路径,如果带目录的话,格式为 "dir1/object1"
    getPresignedURLRequest.object = @"exampleobject";
    
    [getPresignedURLRequest setFinishBlock:^(QCloudGetPresignedURLResult * _Nonnull result,
                                             NSError * _Nonnull error) {
        // 预签名 URL
        NSString* presignedURL = result.presienedURL;
    
    }];
    
    [[QCloudCOSXMLService defaultCOSXML] getPresignedURL:getPresignedURLRequest];

    说明:

    更多完整示例,请前往 GitHub 查看。

    Swift

    let getPresign  = QCloudGetPresignedURLRequest.init();
    
    // 存储桶名称,格式为 BucketName-APPID
    getPresign.bucket = "examplebucket-1250000000" ;
    
    // 使用预签名 URL 的请求的 HTTP 方法。有效值(大小写敏感)为:
    // @"GET"、@"PUT"、@"POST"、@"DELETE"
    getPresign.httpMethod = "GET";
    
    // 对象键,是对象在 COS 上的完整路径,如果带目录的话,格式为 "dir1/object1"
    getPresign.object = "exampleobject";
    getPresign.setFinish { (result, error) in
        if let result = result {
            let url = result.presienedURL
        } else {
            print(error!);
        }
    }
    QCloudCOSXMLService.defaultCOSXML().getPresignedURL(getPresign);

    说明:

    更多完整示例,请前往 GitHub查看。

    Was this page helpful?

    本页内容是否解决了您的问题?

    • 完全没帮助
    • 文档较差
    • 文档一般
    • 文档不错
    • 文档很好
    反馈
    帮助