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
(Objective-C) REST POST JSON using Gzip Content EncodingDemonstrates how to send a JSON POST using the gzip Content-Encoding.
#import <CkoJsonObject.h> #import <CkoRest.h> #import <CkoStringBuilder.h> // 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" // } // CkoJsonObject *json = [[CkoJsonObject alloc] init]; [json UpdateString: @"lists[0].id" value: @"1511199999"]; [json UpdateBool: @"confirmed" value: NO]; [json UpdateString: @"email_addresses[0].email_address" value: @"support@chilkatsoft.com"]; [json UpdateString: @"first_name" value: @"Matt"]; [json UpdateString: @"last_name" value: @"Smith"]; CkoRest *rest = [[CkoRest alloc] init]; BOOL success = [rest Connect: @"api.constantcontact.com" port: [NSNumber numberWithInt: 443] tls: YES autoReconnect: YES]; if (success != YES) { NSLog(@"%@",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"]; CkoStringBuilder *sbReq = [[CkoStringBuilder alloc] init]; [json EmitSb: sbReq]; // Send the POST. CkoStringBuilder *sbResp = [[CkoStringBuilder alloc] init]; success = [rest FullRequestSb: @"POST" uriPath: @"/v2/contacts?action_by=ACTION_BY_VISITOR&api_key=xxxxxxx" requestBody: sbReq responseBody: sbResp]; if (success != YES) { NSLog(@"%@",rest.LastErrorText); return; } NSLog(@"%@",@"Response body:"); NSLog(@"%@",[sbResp GetAsString]); if ([rest.ResponseStatusCode intValue] != 200) { NSLog(@"%@%d",@"Received error response code: ",[rest.ResponseStatusCode intValue]); return; } CkoJsonObject *jsonResp = [[CkoJsonObject alloc] init]; [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.