我在通过 AFNetworking 将文件上传到 S3 时遇到困难。当我尝试上传时,我收到回调指示一小部分文件已上传,然后回调停止,一两分钟后我收到超时消息。
我正在使用 AFAmazonS3Client但它似乎是 AFHTTPClient 的一个非常直接的子类,所以问题似乎不太可能出在那里。由于我是 AFNetworking 和 S3 的新手,我很确定问题出在输入此消息:)
我已经下载了 AWS-IOS SDK,并且能够毫无问题地从他们的示例代码中发布图片。所以我认为这不是我的 S3 帐户配置错误。
最佳答案
在为同样的问题苦苦挣扎并进行了一些研究之后,我找到了一个似乎行之有效的解决方案。
下载适用于 iOS 的 Amazon AWS SDK 并将其添加到您的项目中:
http://aws.amazon.com/sdkforios/
然后,使用自定义 NSOperation
类实现上传测试,如下所述:
Using delegates, operations, and queues
AmazonServiceRequestDelegate
协议(protocol)是获取进度更新的关键,其方式与 AFNetworking
类似。
特别是,这个方法正是我所需要的:
-(void)request:(AmazonServiceRequest *)request didSendData:(NSInteger)bytesWritten
totalBytesWritten:(NSInteger)totalBytesWritten
totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite;
关于ios - 通过 AFNetworking 上传到 Amazon-S3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10508848/