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

Example: Http.HttpFile method

Shows how to use the HttpFile method to send an HTTP POST request with the contents of a file 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 data.zip]

Also see: Chilkat Http Default and Auto-Filled Headers

Chilkat Xbase++ Downloads

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

nSuccess := 0

oHttp := CreateObject("Chilkat.Http")

cLocalFilePath := "C:/example/zips/data.zip"
cUrl := "https://example.com/api/v1/sites/123/deploys"

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

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

oHttp:destroy()
oResp:destroy()