iOS开发

iOS-从亚马逊S3上下载文件

2021-01-19  本文已影响0人  拎着猫走的鱼

pod 'AWSMobileClient'
pod 'AWSS3'

    import AWSCore
    import AWSS3
    private func downloadFileFromS3() {

        let accessKey = "你的accessKey"
        let secretKey = "你的secretKey"
        let bucketStr = "你的bucketStr"
        
        let credentialsProvider = AWSStaticCredentialsProvider(accessKey: accessKey, secretKey: secretKey)
        let configuration = AWSServiceConfiguration(region: .APNortheast1, credentialsProvider: credentialsProvider)
        
        AWSServiceManager.default().defaultServiceConfiguration = configuration

        let expression = AWSS3TransferUtilityDownloadExpression()
        expression.progressBlock = {(task, progress) in

            print("progress = \(progress.fractionCompleted) -----\(task)")
        }

        var completionHandler: AWSS3TransferUtilityDownloadCompletionHandlerBlock?
        completionHandler = { (task, location, data, error) -> Void in
                if let error = error {
                    NSLog("Failed with error: \(error)")
                    print("Failed")
                }
                else{
                    
                    print("Download Success")
                    }
            }

            let transferUtility = {
                AWSS3TransferUtility.default()
            }()
            
        let downLoadPath = "你的下载地址"
        transferUtility.downloadData(fromBucket: bucketStr, key: downLoadPath, expression: expression, completionHandler: completionHandler).continueWith { (task) -> AnyObject? in
            if let error = task.error {
                NSLog("Error: %@",error.localizedDescription);
            }

            if let _ = task.result {
                print("Download Starting!")
                // Do something with uploadTask.
            }
            return nil;
        }
    }
上一篇下一篇

猜你喜欢

热点阅读