使用AWSS3TransferManagerUploadRequest如何设置超时间隔?

时间:2014-10-23 14:29:55

标签: ios amazon-web-services timeout

目前我正在使用AWS Mobile SDK for iOS v2.0.6并执行上传和下载。 当我传输8 MB和更大的文件时,我经常收到来自亚马逊服务的“超时”错误或“网络连接丢失”错误。

请帮我增加超时间隔或如何设置最大重试次数?

以下是我发起上传请求的方式:

AWSS3TransferManagerUploadRequest *uploadRequest = [AWSS3TransferManagerUploadRequest new];
[[[AWSS3TransferManager defaultS3TransferManager] upload:uploadRequest] continueWithExecutor:[BFExecutor mainThreadExecutor] withBlock:^id(BFTask *task)

并且还使用默认的s3管理器,即

[AWSS3TransferManager defaultS3TransferManager]

以下是我得到的错误:

User info---{
    NSErrorFailingURLKey = "https://s3.amazonaws.com/bucketname/Multimedia/Audio/20141023/AUDIO_646E98B7-D688-4923-9BEB-1E8CDF233027.caf";
    NSErrorFailingURLStringKey = "https://s3.amazonaws.com/bucketname/Multimedia/Audio/20141023/AUDIO_646E98B7-D688-4923-9BEB-1E8CDF233027.caf";
    NSLocalizedDescription = "The request timed out.";
    NSUnderlyingError = "Error Domain=kCFErrorDomainCFNetwork Code=-1001 \"The request timed out.\" UserInfo=0x16bb3a00 {NSErrorFailingURLKey=https://s3.amazonaws.com/bucketname/Multimedia/Audio/20141023/AUDIO_646E98B7-D688-4923-9BEB-1E8CDF233027.caf, NSErrorFailingURLStringKey=https://s3.amazonaws.com/bucketname/Multimedia/Audio/20141023/AUDIO_646E98B7-D688-4923-9BEB-1E8CDF233027.caf, NSLocalizedDescription=The request timed out.}";
}

此致 钱德里卡

1 个答案:

答案 0 :(得分:2)

AWSServiceConfiguration有一个名为maxRetryCount的属性。您可以根据用例将其设置为适当的值。

此外,最新版本的SDK包含许多错误修复,因此请务必尽快更新您的副本。