Sample code for 30+ languages & platforms
Swift

S3 Upload a File with Public Read Permissions

See more Amazon S3 Examples

Demonstrates how to upload a file to the Amazon S3 service with the x-amz-acl request header set to "public-read" to allow the file to be publicly downloadable.

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

    // This example assumes the Chilkat HTTP API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    let http = CkoHttp()!

    // Insert your AWS keys here:
    http.awsAccessKey = "AWS_ACCESS_KEY"
    http.awsSecretKey = "AWS_SECRET_KEY"

    var bucketName: String? = "chilkat.ocean"
    var objectName: String? = "seahorse.jpg"
    var localFilePath: String? = "qa_data/jpg/seahorse.jpg"
    var contentType: String? = "image/jpg"

    // Add the x-amz-acl request header to make the file publicly readable.
    http.setRequestHeader(name: "x-amz-acl", value: "public-read")

    success = http.s3_UploadFile(localFilePath: localFilePath, contentType: contentType, bucketName: bucketName, objectName: objectName)

    if success != true {
        print("\(http.lastErrorText!)")
        return
    }

    if http.lastStatus.intValue == 200 {
        print("File uploaded.")
    }
    else {
        print("Response status code: \(http.lastStatus.intValue)")
        print("\(http.lastResponseBody!)")
    }


}