Bu konu, yükleme geri aramalarının nasıl yapılandırılacağını açıklar.
Notlar
-
Bu konudaki örnek kodu çalıştırmadan önce, özel etki alanı adı veya Security Token Service (STS) gibi yöntemler kullanarak bir OSSClient örneği oluşturmalısınız. Daha fazla bilgi için bkz. Başlatma (iOS SDK).
NotPaketin bölgesi, başlatma sırasında belirtilen uç nokta tarafından belirlenir.
Bir nesne yüklemek için
oss:PutObjectiznine sahip olmalısınız. Daha fazla bilgi için bkz. RAM kullanıcısına özel ilke ekleme.
Örnekler
Aşağıdaki örnek kod, yükleme geri aramasının nasıl yapılandırılacağını gösterir:
OSSPutObjectRequest * request = [OSSPutObjectRequest new];
// Specify the name of the bucket. Example: examplebucket.
request.bucketName = @"examplebucket";
// Specify the full path of the object. Do not include the bucket name in the full path. Example: exampledir/exampleobject.txt.
request.objectKey = @"exampledir/exampleobject.txt";
request.uploadingFileURL = [NSURL fileURLWithPath:@"<filepath>"];
// Configure callback parameters.
request.callbackParam = @{
@"callbackUrl": @"<your server callback address>",
@"callbackBody": @"<your callback body>"
};
// Specify custom variables.
request.callbackVar = @{
@"<var1>": @"<value1>",
@"<var2>": @"<value2>"
};
request.uploadProgress = ^(int64_t bytesSent, int64_t totalByteSent, int64_t totalBytesExpectedToSend) {
NSLog(@"%lld, %lld, %lld", bytesSent, totalByteSent, totalBytesExpectedToSend);
};
OSSTask * task = [client putObject:request];
[task continueWithBlock:^id(OSSTask *task) {
if (task.error) {
OSSLogError(@"%@", task.error);
} else {
OSSPutObjectResult * result = task.result;
NSLog(@"Result - requestId: %@, headerFields: %@, servercallback: %@",
result.requestId,
result.httpResponseHeaderFields,
result.serverReturnJsonString);
}
return nil;
}];
// Implement synchronous blocking to wait for the task to complete.
// [task waitUntilFinished];
İlgili Konular
Yükleme geri aramalarını yapılandırmak için kullanılan tam örnek kodu görüntülemek üzere GitHub adresini ziyaret edin.
Yükleme geri aramalarını yapılandırmak için çağırabileceğiniz API işlemleri hakkında daha fazla bilgi için bkz. Geri Arama.