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
(Go) REST POST JSON using Gzip Content EncodingDemonstrates how to send a JSON POST using the gzip Content-Encoding.
// 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" // } // json := chilkat.NewJsonObject() json.UpdateString("lists[0].id","1511199999") json.UpdateBool("confirmed",false) json.UpdateString("email_addresses[0].email_address","support@chilkatsoft.com") json.UpdateString("first_name","Matt") json.UpdateString("last_name","Smith") rest := chilkat.NewRest() success := rest.Connect("api.constantcontact.com",443,true,true) if success != true { fmt.Println(rest.LastErrorText()) json.DisposeJsonObject() rest.DisposeRest() return } rest.AddHeader("Content-Type","application/json") rest.AddHeader("Authorization","Bearer xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx") // Tell the server you'll accept only an application/json response. rest.AddHeader("Accept","application/json") // Indicate that we'll be sending the request body gzipped. rest.AddHeader("Content-Encoding","gzip") sbReq := chilkat.NewStringBuilder() json.EmitSb(sbReq) // Send the POST. sbResp := chilkat.NewStringBuilder() success = rest.FullRequestSb("POST","/v2/contacts?action_by=ACTION_BY_VISITOR&api_key=xxxxxxx",sbReq,sbResp) if success != true { fmt.Println(rest.LastErrorText()) json.DisposeJsonObject() rest.DisposeRest() sbReq.DisposeStringBuilder() sbResp.DisposeStringBuilder() return } fmt.Println("Response body:") fmt.Println(*sbResp.GetAsString()) if rest.ResponseStatusCode() != 200 { fmt.Println("Received error response code: ", rest.ResponseStatusCode()) json.DisposeJsonObject() rest.DisposeRest() sbReq.DisposeStringBuilder() sbResp.DisposeStringBuilder() return } jsonResp := chilkat.NewJsonObject() jsonResp.LoadSb(sbResp) // Use the online tool at https://tools.chilkat.io/jsonParse.cshtml // to generate the JSON code that parses the JSON response.. json.DisposeJsonObject() rest.DisposeRest() sbReq.DisposeStringBuilder() sbResp.DisposeStringBuilder() jsonResp.DisposeJsonObject() |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.