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
(C++) SNS List TopicsList the existing SNS topics. See SNS List Topics for more information.
#include <CkRest.h> #include <CkAuthAws.h> #include <CkXml.h> void ChilkatSample(void) { // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. CkRest rest; // Connect to the Amazon AWS REST server. // such as https://sns.us-west-2.amazonaws.com/ bool bTls = true; int port = 443; bool bAutoReconnect = true; bool success = rest.Connect("sns.us-west-2.amazonaws.com",port,bTls,bAutoReconnect); // Provide AWS credentials for the REST call. CkAuthAws authAws; authAws.put_AccessKey("AWS_ACCESS_KEY"); authAws.put_SecretKey("AWS_SECRET_KEY"); // the region should match our URL above.. authAws.put_Region("us-west-2"); authAws.put_ServiceName("sns"); rest.SetAuthAws(authAws); rest.AddQueryParam("Action","ListTopics"); const char *responseXml = rest.fullRequestNoBody("GET","/"); if (rest.get_LastMethodSuccess() != true) { std::cout << rest.lastErrorText() << "\r\n"; return; } // A successful response will have a status code equal to 200. if (rest.get_ResponseStatusCode() != 200) { std::cout << "response status code = " << rest.get_ResponseStatusCode() << "\r\n"; std::cout << "response status text = " << rest.responseStatusText() << "\r\n"; std::cout << "response header: " << rest.responseHeader() << "\r\n"; std::cout << "response body: " << responseXml << "\r\n"; return; } // Examine the successful XML response (shown below) CkXml xml; xml.LoadXml(responseXml); std::cout << xml.getXml() << "\r\n"; // To iterate over the TopicArn's const char *notUsed = xml.chilkatPath("ListTopicsResult|Topics|$"); int i = 0; int numTopics = xml.get_NumChildren(); while (i < numTopics) { xml.GetChild2(i); std::cout << xml.getChildContent("TopicArn") << "\r\n"; xml.GetParent2(); i = i + 1; } xml.GetRoot2(); // A sample successful response: // <?xml version="1.0" encoding="utf-8" ?> // <ListTopicsResponse xmlns="http://sns.amazonaws.com/doc/2010-03-31/"> // <ListTopicsResult> // <Topics> // <member> // <TopicArn>arn:aws:sns:us-west-2:957491831129:chilkat</TopicArn> // </member> // <member> // <TopicArn>arn:aws:sns:us-west-2:957491831129:chilkat123</TopicArn> // </member> // <member> // <TopicArn>arn:aws:sns:us-west-2:957491831129:chilkatses</TopicArn> // </member> // </Topics> // </ListTopicsResult> // <ResponseMetadata> // <RequestId>54514f94-b07d-5f0b-9c8a-1ff85ff4ac65</RequestId> // </ResponseMetadata> // </ListTopicsResponse> } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.