Sample code for 30+ languages & platforms
PureBasic

Backblaze S3 Upload Binary

See more Backblaze S3 Examples

Demonstrates how to upload the in-memory binary data to an Backblaze bucket.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkBinData.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkXml.pb"

Procedure ChilkatExample()

    success.i = 0

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

    http.i = CkHttp::ckCreate()
    If http.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    ; keyID = Access Key ID or Access Key
    CkHttp::setCkAwsAccessKey(http, "access-key")

    ; applicationKey = Secret Access Key or Secret Key
    CkHttp::setCkAwsSecretKey(http, "secret-key")

    ; Region is the 2nd part of your S3 Endpoint
    CkHttp::setCkAwsEndpoint(http, "s3.us-west-002.backblazeb2.com")

    bucketName.s = "chilkat-test-123"
    objectName.s = "starfish.jpg"

    ; The Content-Type has the form  type/subtype, such as application/pdf, application/json, image/jpeg, etc.
    ; See Explaining Content-Types
    contentType.s = "image/jpeg"

    CkHttp::setCkKeepResponseBody(http, 1)

    jpgData.i = CkBinData::ckCreate()
    If jpgData.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkBinData::ckLoadFile(jpgData,"qa_data/jpg/starfish.jpg")

    success = CkHttp::ckS3_UploadBd(http,jpgData,contentType,bucketName,objectName)
    If success <> 1
        Debug CkHttp::ckLastErrorText(http)

        xml.i = CkXml::ckCreate()
        If xml.i = 0
            Debug "Failed to create object."
            ProcedureReturn
        EndIf

        CkXml::ckLoadXml(xml,CkHttp::ckLastResponseBody(http))
        Debug CkXml::ckGetXml(xml)
    Else
        Debug "JPG uploaded."
    EndIf



    CkHttp::ckDispose(http)
    CkBinData::ckDispose(jpgData)
    CkXml::ckDispose(xml)


    ProcedureReturn
EndProcedure