追加上传指的是使用OSS API中的AppendObject在已上传的Appendable Object类型文件后直接追加内容。

有关追加上传的更多详情,请参见追加上传

以下代码用于追加上传:

OSSAppendObjectRequest * append = [OSSAppendObjectRequest new];
// 配置以下必填字段,其中bucketName为存储空间名称;objectKey等同于objectName,表示追加上传文件到OSS时需要指定包含文件后缀在内的完整路径,例如abc/efg/123.jpg。
append.bucketName = @"<bucketName>";
append.objectKey = @"<objectKey>";
// 指定首次进行追加上传的位置。
append.appendPosition = 0; 
NSString * docDir = [self getDocumentDirectory];
append.uploadingFileURL = [NSURL fileURLWithPath:@"<filepath>"];
// 以下为可选字段。
append.uploadProgress = ^(int64_t bytesSent, int64_t totalByteSent, int64_t totalBytesExpectedToSend) {
    NSLog(@"%lld, %lld, %lld", bytesSent, totalByteSent, totalBytesExpectedToSend);
};
// append.contentType = @"";
// append.contentMd5 = @"";
// append.contentEncoding = @"";
// append.contentDisposition = @"";
OSSTask * appendTask = [client appendObject:append];
[appendTask continueWithBlock:^id(OSSTask *task) {
    NSLog(@"objectKey: %@", append.objectKey);
    if (!task.error) {
        NSLog(@"append object success!");
        OSSAppendObjectResult * result = task.result;
        NSString * etag = result.eTag;
        long nextPosition = result.xOssNextAppendPosition;
    } else {
        NSLog(@"append object failed, error: %@" , task.error);
    }
    return nil;
}];

有关可选字段的详情,请参见AppendObject