Sample code for 30+ languages & platforms
B4X

Set a Multipart Part Body from BinData

See more REST Examples

Demonstrates Rest.SetMultipartBodyBd, which sets the binary body of the selected multipart part from a BinData.

The file paths are relative to the application's current working directory. Absolute paths may also be used. Supply the paths appropriate to your own environment.

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 B4X Downloads

B4X
Dim success As Boolean = False

Dim rest As ChilkatRest
rest.Initialize("rest")
Dim bTls As Boolean = True
Dim bAutoReconnect As Boolean = True
success = rest.Connect("example.com", 443, bTls, bAutoReconnect)
If success = False Then
    Log(rest.LastErrorText)
    Return
End If

'  The file paths are relative to the application's current working directory.  Absolute paths
'  may also be used.  Supply the paths appropriate to your own environment.

'  Select the multipart part to build, and set its header fields.
rest.PartSelector = "1"
rest.AddHeader("Content-Disposition", "form-data; name=" & Chr(34) & "field1" & Chr(34))
rest.AddHeader("Content-Type", "image/png")

'  Set the binary body of the selected part from a BinData.
Dim bdBody As ChilkatBinData
bdBody.Initialize
Dim bLoaded As Boolean = bdBody.LoadFile("qa_data/image.png")
If bLoaded <> True Then
    Log("Failed to load the part body file.")
    Return
End If

success = rest.SetMultipartBodyBd(bdBody)
If success = False Then
    Log(rest.LastErrorText)
    Return
End If


Dim responseText As String = rest.FullRequestMultipart("POST", "/api/upload")
If rest.LastMethodSuccess = False Then
    Log(rest.LastErrorText)
    Return
End If

Log(responseText)