HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iOS – 同步上传到AWS S3大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
所有aws-sdk-ios示例都使用AWSS3TransfeRMANager异步上传数据.

例如:https://github.com/awslabs/aws-sdk-ios-samples/blob/master/S3TransferManager-Sample/Swift/S3TransferManagerSampleSwift/UploadViewController.swift#L81

现在通常,这很好,但由于其他原因,我的工作已经在NSOperation子类中了,所以我想同步上传到S3以保持简单(否则,我需要实现异步NSOperation,并且更多样板……)

有人知道怎么做吗?

解决方法

如果有人好奇,我想出来:

let credentialsProvider = AWSCognitoCredentialsProvider(regionType: AWSRegionType.USEast1,identityPoolId: AwsCognitoIdentityPoolId)
    let configuration = AWSserviceConfiguration(region: AWSRegionType.USEast1,credentialsProvider: credentialsProvider)
    AWSserviceManager.defaultserviceManager().defaultserviceConfiguration = configuration

    let S3Client = AWSS3.defaultS3()
    let putObjectrequest = AWSS3PutObjectrequest()
    putObjectrequest.bucket = AwsBucketName
    putObjectrequest.key = key
    putObjectrequest.body = logFilePathURL

    do {
        let fileAttributes = try self.fileManager.attributesOfItemAtPath(logFilePathURl.path!)
        let fileSizenumber = fileAttributes[NSFileSize] as! NSnumber
        putObjectrequest.contentLength = NSnumber(longLong: fileSizenumber.longLongvalue)
    } catch _ as NSError {
        // TODO handle error
    }

    S3Client.putObject(putObjectrequest).conTinueWithBlock { (task: AWSTask) -> AnyObject? in
        return nil
    }.waitUntilFinished()

…是啊.我无法在任何地方找到一个例子,所以我必须阅读源代码解决问题.至于那个aws-sdk-ios库,谈论过度工程……需要一段时间才能通过所有这些间接层来弄明白.

无论如何,在我返回nil的最后一个区块中,你处理错误等等.

大佬总结

以上是大佬教程为你收集整理的iOS – 同步上传到AWS S3全部内容,希望文章能够帮你解决iOS – 同步上传到AWS S3所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。