Sample code for 30+ languages & platforms
Tcl

Example: Http.HttpSReq method

Demonstrates how to call the HttpSReq method.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

set http [new_CkHttp]

set req [new_CkHttpRequest]

set resp [new_CkHttpResponse]

# Specify the details of the HTTP request.
CkHttpRequest_put_HttpVerb $req "POST"
CkHttpRequest_put_ContentType $req "application/json"
CkHttpRequest_put_Path $req "/echo_request_body.asp"

set requestBody "{\"greeting\":\"Hello World\"}"
CkHttpRequest_LoadBodyFromString $req $requestBody "utf-8"

# Send a POST to https://chilkatsoft.com/echo_request_body.asp with a JSON request body.
set success [CkHttp_HttpSReq $http "chilkatsoft.com" 443 1 $req $resp]
if {$success == 0} then {
    puts [CkHttp_lastErrorText $http]
    delete_CkHttp $http
    delete_CkHttpRequest $req
    delete_CkHttpResponse $resp
    exit
}

puts "Response Status Code: [CkHttpResponse_get_StatusCode $resp]"

# Examine the request we sent.
# The LastHeader property stores the HTTP request header of the most recent request sent,
# and in this instance, the response body mirrors the request body.
puts [CkHttp_lastHeader $http]
puts [CkHttpResponse_bodyStr $resp]

# Output:

# POST /echo_request_body.asp HTTP/1.1
# Host: chilkatsoft.com
# Content-Type: application/json
# Content-Length: 26
# 
# {"greeting":"Hello World"}

delete_CkHttp $http
delete_CkHttpRequest $req
delete_CkHttpResponse $resp