Sample code for 30+ languages & platforms
Tcl

POST application/x-www-form-urlencoded using REST API

See more REST Examples

Demonstrates how to send a POST with query params (x-www-form-urlencoded) using the Chilkat REST object.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

set rest [new_CkRest]

# This example will send to https://www.chilkatsoft.com/echoPost.asp

# Make the initial connection (without sending a request yet).
set bTls 1
set port 443
set bAutoReconnect 1
set success [CkRest_Connect $rest "www.chilkatsoft.com" $port $bTls $bAutoReconnect]
if {$success != 1} then {
    puts [CkRest_lastErrorText $rest]
    delete_CkRest $rest
    exit
}

# Provide query params.
CkRest_AddQueryParam $rest "firstName" "John"
CkRest_AddQueryParam $rest "lastName" "Doe"
CkRest_AddQueryParam $rest "company" "Bisco Bits Ltd."

set responseStr [CkRest_fullRequestFormUrlEncoded $rest "POST" "/echoPost.asp"]
if {[CkRest_get_LastMethodSuccess $rest] != 1} then {
    puts [CkRest_lastErrorText $rest]
    delete_CkRest $rest
    exit
}

# When successful, the response status code will equal 200.
if {[CkRest_get_ResponseStatusCode $rest] != 200} then {
    # Examine the request/response to see what happened.
    puts "response status code = [CkRest_get_ResponseStatusCode $rest]"
    puts "response status text = [CkRest_responseStatusText $rest]"
    puts "response header: [CkRest_responseHeader $rest]"
    puts "response body (if any): $responseStr"
    puts "---"
    puts "LastRequestStartLine: [CkRest_lastRequestStartLine $rest]"
    puts "LastRequestHeader: [CkRest_lastRequestHeader $rest]"
    delete_CkRest $rest
    exit
}

puts "$responseStr"
puts "Success."

delete_CkRest $rest