Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) REST POST JSON using Gzip Content EncodingDemonstrates how to send a JSON POST using the gzip Content-Encoding.
load ./chilkat.dll # This requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # Use the online tool at https://tools.chilkat.io/Default.cshtml # to generate the JSON code that creates this JSON: # { # "lists": [ # { # "id": "1511199999" # } # ], # "confirmed": false, # "email_addresses": [ # { # "email_address": "support@chilkatsoft.com" # } # ], # "first_name": "Matt", # "last_name": "Smith" # } # set json [new_CkJsonObject] CkJsonObject_UpdateString $json "lists[0].id" "1511199999" CkJsonObject_UpdateBool $json "confirmed" 0 CkJsonObject_UpdateString $json "email_addresses[0].email_address" "support@chilkatsoft.com" CkJsonObject_UpdateString $json "first_name" "Matt" CkJsonObject_UpdateString $json "last_name" "Smith" set rest [new_CkRest] set success [CkRest_Connect $rest "api.constantcontact.com" 443 1 1] if {$success != 1} then { puts [CkRest_lastErrorText $rest] delete_CkJsonObject $json delete_CkRest $rest exit } CkRest_AddHeader $rest "Content-Type" "application/json" CkRest_AddHeader $rest "Authorization" "Bearer xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx" # Tell the server you'll accept only an application/json response. CkRest_AddHeader $rest "Accept" "application/json" # Indicate that we'll be sending the request body gzipped. CkRest_AddHeader $rest "Content-Encoding" "gzip" set sbReq [new_CkStringBuilder] CkJsonObject_EmitSb $json $sbReq # Send the POST. set sbResp [new_CkStringBuilder] set success [CkRest_FullRequestSb $rest "POST" "/v2/contacts?action_by=ACTION_BY_VISITOR&api_key=xxxxxxx" $sbReq $sbResp] if {$success != 1} then { puts [CkRest_lastErrorText $rest] delete_CkJsonObject $json delete_CkRest $rest delete_CkStringBuilder $sbReq delete_CkStringBuilder $sbResp exit } puts "Response body:" puts [CkStringBuilder_getAsString $sbResp] if {[CkRest_get_ResponseStatusCode $rest] != 200} then { puts "Received error response code: [CkRest_get_ResponseStatusCode $rest]" delete_CkJsonObject $json delete_CkRest $rest delete_CkStringBuilder $sbReq delete_CkStringBuilder $sbResp exit } set jsonResp [new_CkJsonObject] CkJsonObject_LoadSb $jsonResp $sbResp # Use the online tool at https://tools.chilkat.io/jsonParse.cshtml # to generate the JSON code that parses the JSON response.. delete_CkJsonObject $json delete_CkRest $rest delete_CkStringBuilder $sbReq delete_CkStringBuilder $sbResp delete_CkJsonObject $jsonResp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.