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
(Swift 3,4,5...) REST POST JSON using Gzip Content EncodingDemonstrates how to send a JSON POST using the gzip Content-Encoding.
func chilkatTest() { // 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" // } // let json = CkoJsonObject()! json.update("lists[0].id", value: "1511199999") json.updateBool("confirmed", value: false) json.update("email_addresses[0].email_address", value: "support@chilkatsoft.com") json.update("first_name", value: "Matt") json.update("last_name", value: "Smith") let rest = CkoRest()! var success: Bool = rest.connect("api.constantcontact.com", port: 443, tls: true, autoReconnect: true) if success != true { print("\(rest.lastErrorText!)") return } rest.addHeader("Content-Type", value: "application/json") rest.addHeader("Authorization", value: "Bearer xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx") // Tell the server you'll accept only an application/json response. rest.addHeader("Accept", value: "application/json") // Indicate that we'll be sending the request body gzipped. rest.addHeader("Content-Encoding", value: "gzip") let sbReq = CkoStringBuilder()! json.emitSb(sbReq) // Send the POST. let sbResp = CkoStringBuilder()! success = rest.fullRequestSb("POST", uriPath: "/v2/contacts?action_by=ACTION_BY_VISITOR&api_key=xxxxxxx", requestBody: sbReq, responseBody: sbResp) if success != true { print("\(rest.lastErrorText!)") return } print("Response body:") print("\(sbResp.getAsString()!)") if rest.responseStatusCode.intValue != 200 { print("Received error response code: \(rest.responseStatusCode.intValue)") return } let jsonResp = CkoJsonObject()! jsonResp.loadSb(sbResp) // Use the online tool at https://tools.chilkat.io/jsonParse.cshtml // to generate the JSON code that parses the JSON response.. } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.