Sample code for 30+ languages & platforms
Xojo Plugin

HTTP POST x-www-form-urlencoded

Demonstrates how to send a simple x-www-form-urlencoded POST.

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

Dim http As New Chilkat.Http

Dim jsonStr As String
jsonStr = "{ some json ... }"

Dim req As New Chilkat.HttpRequest
// This query parameter just happens to be named "json" and contains JSON text.
req.AddParam "json",jsonStr

// We can optionally add more query parameters. 
req.AddParam "abc","123"
req.AddParam "xml","<abc>123</abc>"

// Note: Just because we passed a query param named "json" or "xml" means nothing special.  It's still just
// a name=value query parameter..

req.HttpVerb = "POST"
req.ContentType = "application/x-www-form-urlencoded"

Dim resp As New Chilkat.HttpResponse
success = http.HttpReq("http://example.com/xyz/connect/report",req,resp)
If (success = False) Then
    System.DebugLog(http.LastErrorText)
    Return
End If

If (resp.StatusCode <> 200) Then
    System.DebugLog("Hey, I didn't receive the expected response status code!")
    System.DebugLog("status code = " + Str(resp.StatusCode))
End If

// Could be error text if the status code wasn't what we expected, or could be the response
// body you're seeking..
Dim responseBody As String
responseBody = resp.BodyStr
System.DebugLog(responseBody)

Dim fac As New Chilkat.FileAccess
Dim filepath As String
filepath = "some file path"
success = fac.WriteEntireTextFile(filepath,responseBody,"utf-8",False)
If (success <> True) Then
    System.DebugLog(fac.LastErrorText)
End If