0

I have a situation to upload content to S3 Bucket AWS.

I am using the below code and the code is not compiled.

Please advise.

let data = // The data to upload

let expression = AWSS3TransferUtilityUploadExpression()
expression.progressBlock = {(task, progress) in DispatchQueue.main.async(execute: {
        // Do something e.g. Update a progress bar.
    })
}

let completionHandler = { (task, error) -> Void in
    DispatchQueue.main.async(execute: {
        // Do something e.g. Alert a user for transfer completion.
        // On failed uploads, `error` contains the error object.
    })
}

let  transferUtility = AWSS3TransferUtility.default()

transferUtility.uploadData(data,
            bucket: S3BucketName,
            key: S3UploadKeyName,
            contentType: "image/png",
            expression: expression,
            completionHandler: completionHandler).continueWith { (task) -> AnyObject! in
    if let error = task.error {
        print("Error: \(error.localizedDescription)")
    }

    if let _ = task.result {
        // Do something with uploadTask.
    }

    return nil;
}

I am getting 2 below errors.

Unable to infer type of a closure parameter 'error' in the current context. Unable to infer type of a closure parameter 'task' in the current context

user1960279
  • 494
  • 1
  • 8
  • 24

0 Answers0