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
(PowerBuilder) S3 List Bucket Objects (using Chilkat REST)Demonstrates how to fetch a list of objects in an S3 bucket.
integer li_rc oleobject loo_Rest integer li_BTls integer li_Port integer li_BAutoReconnect integer li_Success oleobject loo_AuthAws oleobject loo_SbResponse integer li_StatusCode oleobject loo_Xml string ls_Key string ls_LastModified string ls_ETag string ls_SizeDecimalStr string ls_ID string ls_DisplayName string ls_StorageClass string ls_Name integer li_MaxKeys string ls_IsTruncated integer i integer li_Count_i // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Rest = create oleobject // Use "Chilkat_9_5_0.Rest" for versions of Chilkat < 10.0.0 li_rc = loo_Rest.ConnectToNewObject("Chilkat.Rest") if li_rc < 0 then destroy loo_Rest MessageBox("Error","Connecting to COM object failed") return end if // Connect to the Amazon AWS REST server. li_BTls = 1 li_Port = 443 li_BAutoReconnect = 1 li_Success = loo_Rest.Connect("s3.amazonaws.com",li_Port,li_BTls,li_BAutoReconnect) // ---------------------------------------------------------------------------- // Important: For buckets created in regions outside us-east-1, // there are three important changes that need to be made. // See Working with S3 Buckets in Non-us-east-1 Regions for the details. // ---------------------------------------------------------------------------- // Provide AWS credentials for the REST call. loo_AuthAws = create oleobject // Use "Chilkat_9_5_0.AuthAws" for versions of Chilkat < 10.0.0 li_rc = loo_AuthAws.ConnectToNewObject("Chilkat.AuthAws") loo_AuthAws.AccessKey = "AWS_ACCESS_KEY" loo_AuthAws.SecretKey = "AWS_SECRET_KEY" loo_AuthAws.ServiceName = "s3" li_Success = loo_Rest.SetAuthAws(loo_AuthAws) // Set the bucket name via the HOST header. // In this case, the bucket name is "chilkat100". loo_Rest.Host = "chilkat100.s3.amazonaws.com" loo_SbResponse = create oleobject // Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0 li_rc = loo_SbResponse.ConnectToNewObject("Chilkat.StringBuilder") li_Success = loo_Rest.FullRequestNoBodySb("GET","/",loo_SbResponse) if li_Success <> 1 then Write-Debug loo_Rest.LastErrorText destroy loo_Rest destroy loo_AuthAws destroy loo_SbResponse return end if li_StatusCode = loo_Rest.ResponseStatusCode Write-Debug "Response status code = " + string(li_StatusCode) loo_Xml = create oleobject // Use "Chilkat_9_5_0.Xml" for versions of Chilkat < 10.0.0 li_rc = loo_Xml.ConnectToNewObject("Chilkat.Xml") loo_Xml.LoadSb(loo_SbResponse,1) Write-Debug loo_Xml.GetXml() if li_StatusCode <> 200 then Write-Debug "Failed. See error information in the XML." destroy loo_Rest destroy loo_AuthAws destroy loo_SbResponse destroy loo_Xml return end if // Use this online tool to generate code from sample XML: // Generate Code to Create XML ls_Name = loo_Xml.GetChildContent("Name") li_MaxKeys = loo_Xml.GetChildIntValue("MaxKeys") ls_IsTruncated = loo_Xml.GetChildContent("IsTruncated") i = 0 li_Count_i = loo_Xml.NumChildrenHavingTag("Contents") do while i < li_Count_i loo_Xml.I = i ls_Key = loo_Xml.GetChildContent("Contents[i]|Key") ls_LastModified = loo_Xml.GetChildContent("Contents[i]|LastModified") ls_ETag = loo_Xml.GetChildContent("Contents[i]|ETag") ls_SizeDecimalStr = loo_Xml.GetChildContent("Contents[i]|Size") ls_ID = loo_Xml.GetChildContent("Contents[i]|Owner|ID") ls_DisplayName = loo_Xml.GetChildContent("Contents[i]|Owner|DisplayName") ls_StorageClass = loo_Xml.GetChildContent("Contents[i]|StorageClass") i = i + 1 loop destroy loo_Rest destroy loo_AuthAws destroy loo_SbResponse destroy loo_Xml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.