Sample code for 30+ languages & platforms
Xbase++ Requires Chilkat v11.0.0+

Example: Http.HttpBd method

Shows how to use the HttpBd method to send an HTTP POST request with the contents of a BinData as the request body. The example sends the following request:
POST /api/v1/sites/123/deploys HTTP/1.1
Host: example.com
Accept: */*
Accept-Encoding: gzip
Content-Type: application/zip
Content-Length: 123456

[binary data bytes of the BinData]

Also see: Chilkat Http Default and Auto-Filled Headers

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL cLocalFilePath
LOCAL oBd
LOCAL cUrl
LOCAL oResp
LOCAL oHttp

nSuccess := 0

cLocalFilePath := "C:/example/zips/data.zip"
oBd := CreateObject("Chilkat.BinData")
nSuccess := oBd:LoadFile(cLocalFilePath)
IF (nSuccess == 0)
    ? oBd:LastErrorText
    oBd:destroy()
    RETURN
ENDIF

cUrl := "https://example.com/api/v1/sites/123/deploys"

//  Send a POST with the contents of the BinData in the binary HTTP request body.
oResp := CreateObject("Chilkat.HttpResponse")
oHttp := CreateObject("Chilkat.Http")
nSuccess := oHttp:HttpBd("POST", cUrl, oBd, "application/zip", oResp)
IF (nSuccess == 0)
    ? oHttp:LastErrorText
    oBd:destroy()
    oResp:destroy()
    oHttp:destroy()
    RETURN
ENDIF

? "Response Status Code: " + Str(oResp:StatusCode)
? "Response body:"
? oResp:BodyStr

oBd:destroy()
oResp:destroy()
oHttp:destroy()