Tcl
Tcl
Example: Http.HttpJson method - Send a POST with JSON Body
See more HTTP Examples
Demonstrates how to call the HttpJson method, which sends an HTTP POST with a JSON body. This example sends the following request:POST /echo_request_body.asp HTTP/1.1
Host: chilkatsoft.com
Accept: */*
Accept-Encoding: gzip
Content-Type: application/json
Content-Length: 26
{"greeting":"Hello World"}
Also see: Chilkat Http Default and Auto-Filled Headers
Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
set http [new_CkHttp]
set success 0
set json [new_CkJsonObject]
# Build the following JSON: {"greeting":"Hello World"}
CkJsonObject_UpdateString $json "greeting" "Hello World"
# This URL echoes the contents of the request body, letting us view it.
set url "https://chilkatsoft.com/echo_request_body.asp"
# Send a POST with the JSON in the HTTP request body.
set resp [new_CkHttpResponse]
set success [CkHttp_HttpJson $http "POST" $url $json "application/json" $resp]
if {$success == 0} then {
puts [CkHttp_lastErrorText $http]
delete_CkHttp $http
delete_CkJsonObject $json
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
# Accept: */*
# Accept-Encoding: gzip
# Content-Type: application/json
# Content-Length: 26
#
# {"greeting":"Hello World"}
delete_CkHttp $http
delete_CkJsonObject $json
delete_CkHttpResponse $resp