Sample code for 30+ languages & platforms
PureBasic

OSS Upload String (Alibaba Cloud)

See more Alibaba Cloud OSS Examples

Demonstrates how to upload the contents of a string to an AliCloud OSS bucket.

The Chilkat S3 functions in the HTTP class are compatible with Alibaba Cloud's OSS service.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkXml.pb"
IncludeFile "CkHttp.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

    ; Insert your AccessKey ID here:
    CkHttp::setCkAwsAccessKey(http, "access-key")

    ; Insert your AccessKey Secret here:
    CkHttp::setCkAwsSecretKey(http, "secret-key")

    ; To upload to a bucket located in a different region, use the endpoint for that region, such as "oss-cn-hangzhou.aliyuncs.com 	"
    ; See Alibaba Object Storage Service Regions and Endpoints
    CkHttp::setCkAwsEndpoint(http, "oss-us-east-1.aliyuncs.com")

    bucketName.s = "chilkat"
    objectName.s = "orchard.json"
    contentType.s = "application/json"

    CkHttp::setCkKeepResponseBody(http, 1)

    ; Let's say we have JSON in a string and want to upload it to a file in Aliyun..
    jsonStr.s = "{ " + Chr(34) + "orchard" + Chr(34) + ": " + Chr(34) + "apple" + Chr(34) + " }"

    ; The charset indicates the byte representation of what is uploaded.
    ; If needed, Chilkat will internally convert to the desired byte representation before uploading.
    charset.s = "utf-8"
    success = CkHttp::ckS3_UploadString(http,jsonStr,charset,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 "String uploaded."
    EndIf



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


    ProcedureReturn
EndProcedure