Sample code for 30+ languages & platforms
PureBasic

Set a Multipart Part Body from a String

See more REST Examples

Demonstrates Rest.SetMultipartBodyString, which sets the text body of the currently selected multipart part.

Background. A multipart request is assembled part by part: the part selector chooses the part being built, header fields describe it, and a SetMultipartBody method supplies its content. The request is then sent with a multipart send or full-request method.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkRest.pb"

Procedure ChilkatExample()

    success.i = 0

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

    bTls.i = 1
    bAutoReconnect.i = 1
    success = CkRest::ckConnect(rest,"example.com",443,bTls,bAutoReconnect)
    If success = 0
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        ProcedureReturn
    EndIf

    ;  Select the multipart part to build, and set its header fields.
    CkRest::setCkPartSelector(rest, "1")
    CkRest::ckAddHeader(rest,"Content-Disposition","form-data; name=" + Chr(34) + "field1" + Chr(34))
    CkRest::ckAddHeader(rest,"Content-Type","text/plain")

    ;  Set the text body of the selected multipart part.
    success = CkRest::ckSetMultipartBodyString(rest,"value1")
    If success = 0
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        ProcedureReturn
    EndIf

    ;  Send the multipart request using the configured part(s).
    responseText.s = CkRest::ckFullRequestMultipart(rest,"POST","/api/upload")
    If CkRest::ckLastMethodSuccess(rest) = 0
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        ProcedureReturn
    EndIf

    Debug responseText


    CkRest::ckDispose(rest)


    ProcedureReturn
EndProcedure